我是Application Insights的新手,我正在考虑将其用于计划使用asp.net webapi实施的一组服务。我能够非常轻松地启动并运行基本遥测(在VS上的项目上单击鼠标右键,添加“应用程序见解”),但是遇到了一个障碍。我计划在请求标头中为下游服务的调用设置一个关联ID,并且我想用相同的关联ID标记与一个外部呼叫相关的所有遥测。
到目前为止,我发现有一种配置的方法TelemetryInitializer
,但是如果我理解正确,它会在访问请求之前运行,这意味着我无法检查是否应该附加一个关联ID。
因此,我想可能有2种方法可以解决此问题:1)如果我能以某种方式实际上在初始化程序之前访问请求标头,那显然可以解决问题,或者2)以某种方式获得使用的TelemetryClient实例的持有权报告自动生成的遥测。
当我当然可以控制上的哪些属性时,也许最后的选择就是关闭所有自动填充,然后手动完成所有操作TelemetryClient
。但这会做很多工作,所以我更愿意找到其他解决方案。
您说对了,您应该使用TelemetryInitializer。在任何遥测项目上调用Track方法时,将调用所有TelemetryInitializer。自动生成的请求遥测是在请求OnEnd上“跟踪”的,那时您应该拥有所有自定义标头。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句