aws-xray - 什么是 XRay 守护进程?
问题描述
- 当我们运行一个无服务器应用程序时,比如一个 beanstalk、一个 danymoDB 和一个 SNS,每个 JVM 中都会有三个 XRay 守护进程,对吧?
- 如果是这样,XRay 如何从头到尾跟踪请求?跟踪 ID 将与 http 请求标头或类似的东西一起使用?
解决方案
根据文档,“AWS X-Ray 守护程序是一个软件应用程序,它侦听 UDP 端口 2000 上的流量,收集原始分段数据,并将其中继到 AWS X-Ray API。该守护程序与 AWS X 协同工作-Ray SDK 必须正在运行,以便 SDK 发送的数据可以到达 X-Ray 服务。”
需要注意的是,X-Ray SDK 会生成所谓的远程子段,以客户端方式模拟下游的结果。对于像 DynamoDB 这样的服务,您会看到这一点。对于 SNS 之类的东西,跟踪标头信息通过 Http 标头传播。X-Ray Daemon 用于转发服务收到上游请求时生成的段;DynamoDB 还没有这样做,SNS 通过提到的跟踪头转发它。
守护进程不是 JVM 的一部分。它是在将跟踪数据转发到服务的实例中运行的外部进程。从技术上讲,它可以由单个实例、同一个实例或所有实例运行。
推荐阅读
- laravel - 使用 Dropbox 驱动程序无法从 Laravel 上传到 Dropbox
- sql-server - 将 Excel 公式(逻辑)转换为 SQL Server
- android - 将按钮放在 AppBarOverlay 的右上角
- python - 在 Heroku 上使用 Telegram Bot 发送图像时出错
- python - PyGame 不绘制 X
- unit-testing - 如何仅将 pact-jvm 提供程序与 json 文件集成
- php - 将 HTML 表单提交到 .txt 文件,但是如何让新帖子出现在顶部,而不是底部?
- python - 根据单词将列表过滤成更小的列表
- android - 无法创建任务“:app:injectCrashlyticsMappingFileIdDebug”
- mysql - 加快加入字符串字段