如何在Application Insights中显示RabbitMQ上的端到端事务?

问题描述 投票:3回答:1

我们有一个分布式应用程序,其中混合了旧式ASP .NET Web应用程序,ASP .NET Core Web应用程序,ASP .NET Core微服务,.NET Framework控制台应用程序和.NET Core控制台应用程序。组件之间的通信都是通过HTTP和RabbitMQ进行的点对点。

[典型情况是,请求是由面向公众的Web应用程序处理的,这不仅导致通过HTTP与一个或多个微服务直接通信,而且还产生了一个或多个事件并将其发布到RabbitMQ,并尽快进行处理因为消费者拥有免费容量。我们正在使用ApplicationInsights(对于HTTP来说效果很好),但是在将RabbitMQ上的请求添加到端到端事务的可视表示中时遇到了困难。我们正在按照文档中的说明将请求与OperationId和ParentId链接起来,并且可以运行一个查询,该查询返回所有相关的操作,但是我们无法在视图“端到端”中看到整个端到端事务最终交易详细信息”,仅使用纯HTTP请求。

有人可以分享见解吗?为了使Application Insights理解还应以图形方式显示RabbitMQ使用者上下文中的操作,需要执行哪些操作?

c# rabbitmq httprequest microservices azure-application-insights
1个回答
0
投票
在这里引用ZakiMa的评论作为答案,这样可以帮助社区中有类似问题的其他人:

嗨!我们正在积极致力于实现这一目标。如果您有兴趣尝试私人预览(URL中有特殊标志,无需额外配置),请发送电子邮件至我的别名。域是Microsoft ---- com。

此外,仅供参考,在docs中也引用了这与使用Application Insights实施分布式跟踪有关的内容。

当前,跨消息传递技术的自动上下文传播(例如Kafka,RabbitMQ和Azure Service Bus)不受支持。它是可以通过使用trackDependency手动编写此类方案和trackRequest方法。在这些方法中,依赖遥测表示生产者正在排队的消息。要求表示消费者正在处理的消息。在这种情况下,operation_id和operation_parentId应该在消息的属性。

感谢您的帮助。

© www.soinside.com 2019 - 2024. All rights reserved.