Application Insight 将跨服务和队列的请求关联起来

Lar*_*rsi 6 azure azure-queues azure-application-insights azure-web-app-service azure-functions

我知道我可以使用 clienttrackid 并将其设置在标题中,但我不确定应用程序洞察/azure 处理什么以及我需要手动处理什么。情况就是这样(我希望将来自 ServiceA、FunctionA、ServiceB 的日志视为相关事件):

  • Clientapp 调用 ServiceA
  • ServicesA 向队列添加消息
  • FunctionA 由队列触发,并调用 ServiceB

我是否需要将跟踪 ID 添加到我添加到队列中的消息中?还是一切都是自动处理的?

谢谢拉西

Mur*_*oft 4

有一个用于关联的 Application Insights 模式 -请参阅此链接

然而,业务交易通常跨越许多服务和技术的范围,能够在这些服务和技术之间进行关联是很有用的。在业务事务级别定义关联 ID,然后在整个解决方案中流动该关联 ID,某些解决方案可能包括应用程序洞察、数据存储以及其他日志记录和诊断。不幸的是,这是一个手动过程,需要进行一些思考,但跟踪和调试的好处很快就超过了花在这个“管道”上的额外时间。