我正在使用docker为一个.NET应用程序运行lambda函数。事实上,我有两个lambdas,一个基于docker镜像,另一个打包为zip。在用这两个函数配置Xray时,Zip打包的那个可以正常工作,并且可以正常跟踪,但是基于docker镜像运行的lambda不会向Xray发送任何流量。我现在已经得出结论,我应该在运行我的应用程序的同一个容器上运行XRay Deamon,这是正确的吗?到目前为止,我还没有找到任何文档或这个设置的例子
pbgvytdp1#
请添加标签aws-lambda并删除aws-xray以吸引AWS Lambda的注意力。Lambda映像机制可能与正常的Lambda不同,需要AWS Lambda开发人员回答XRay在Lambda映像中的工作原理。
t3psigkw2#
我已经设法找到了解决办法。默认情况下,Xray守护进程也在lambda容器内运行。但是如果你在分布式模式下在stepfunction中运行lambda,根据AWS文档,不会发送任何数据。这是一个非常特殊的用例,无论守护进程是否正在运行,lambda容器都不会向xray API发送任何跟踪信息。我正在考虑在另一种模式(内联模式)下使用stepfunctions运行lambda,或者简单地使用另一个库(来自OpenTelemetry)
2条答案
按热度按时间pbgvytdp1#
请添加标签aws-lambda并删除aws-xray以吸引AWS Lambda的注意力。Lambda映像机制可能与正常的Lambda不同,需要AWS Lambda开发人员回答XRay在Lambda映像中的工作原理。
t3psigkw2#
我已经设法找到了解决办法。默认情况下,Xray守护进程也在lambda容器内运行。但是如果你在分布式模式下在stepfunction中运行lambda,根据AWS文档,不会发送任何数据。这是一个非常特殊的用例,无论守护进程是否正在运行,lambda容器都不会向xray API发送任何跟踪信息。我正在考虑在另一种模式(内联模式)下使用stepfunctions运行lambda,或者简单地使用另一个库(来自OpenTelemetry)