微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在 AWS X-RAY SDK .NET 中动态创建分段

如何解决在 AWS X-RAY SDK .NET 中动态创建分段

好吧,我现在刚刚开始使用 X-Ray 检测我的 .NET Core 应用程序,在 Startup.cs 中添加以下内容

AWSXRayRecorder.InitializeInstance(Configuration);
AWSSDKHandler.RegisterXRayForAllServices();

app.UseXRay("myApp"); //to get HTTP requests

如我所料,所有 httpRequest 都被拦截并记录在 XRay 控制台中。但是在同一个项目中,我有一个监听 RabbitMQ 消息的监听器,所以我有一个 MessageHandler。

我知道 XRay 不会自动检测这个 MessageHandler,因为我需要创建一个段。我知道我可以做这样的事情:

AWSXRayRecorder.Instance.BeginSegment("MyMethodABC"); 
... 
AWSXRayRecorder.Instance.EndSegment();

但我想知道是否存在一种无需在每个方法中都设置此 BeginSegment 的自动方法

解决方法

除了围绕逻辑手动开始/结束段/子段外,没有自动检测 RabbitMQ 调用的方法。

参考:https://docs.aws.amazon.com/xray/latest/devguide/xray-sdk-dotnet.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。