我刚刚开始使用 AWS Xray,并将其与 AWS Lambda 结合使用。问题是我注意到服务 map 上的 AWS Xray 节点重复。例如,SNS 被归类为 AWS::SNS 和 远程调用。因为它们是同一件事,具有完全相同的轨迹和平均响应时间。只是显示为两个不同的节点。有谁知道如何减少这种噪音?
我正在使用 patch_all() 函数来修补所有服务。 以下是图片:Image 1 Image 2
这是痕迹的图像和要点。 Image SNS , Image Remote , Image Remote (details) , Image SNS(Details) , Gist
更新:
- 我已经按照@Rohit 的要求添加了图片
- 问题是用 解决的
使用以下替换
from aws_xray_sdk.core import patch_all
patch_all()
//replaced by
from aws_xray_sdk.core import patch
patch('boto3') //etc etc
最佳答案
你看到的节点来自这个PR https://github.com/aws/aws-xray-sdk-python/pull/19添加对 httplib
的支持。如果你使用 patch_all
httplib 操作也会被捕获。在你的例子中,依赖树是 boto3
-> botocore
-> vendored requests
-> httplib
。因此,您的 AWS 子分段将包含代表 httplib
执行的操作的子分段。
然而,服务图会将“远程”子分段呈现为您所看到的节点。推荐的方法是显式修补要捕获的库以避免意外行为。
关于python - AWS X-Ray 在服务 map 中显示重复节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49319575/