亚马逊 EventBridge 与 AWS X-Ray - Amazon EventBridge

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

亚马逊 EventBridge 与 AWS X-Ray

您可以使用 AWS X-Ray 来跟踪经过的事件 EventBridge。 EventBridge 将原始跟踪标头传递给目标,以便目标服务可以跟踪、分析和调试。

EventBridge 只有当事件来自通过跟踪上下文的PutEvents请求时,才可以为该事件传递跟踪标头。X-Ray 不会跟踪来自第三方合作伙伴、计划事件或 AWS 服务的事件,这些事件源也不会出现在您的 X-Ray 服务图中。

X-Ray 会验证跟踪标头,无效的跟踪标头会被丢弃,但仍会处理该事件。

重要

对于传送到调用目标的事件,跟踪标头可用。

  • 如果您有事件存档,则跟踪标头对于存档事件不可用。如果您重放存档事件,其中不包括跟踪标头。

  • 如果您有死信队列 (DLQ),则跟踪标头将包含在将事件发送到的SendMessage请求中。DLQ如果您使用从中检索事件(消息)ReceiveMessage,则与该事件关联的跟踪标头包含在 Amazon SQS 消息属性中,但不包含在事件消息中。DLQ

有关 EventBridge 事件节点如何连接源和目标服务的信息,请参阅《AWS X-Ray 开发人员指南》中的 “在 X-Ray 服务映射中查看源和目标”。

您可以通过以下跟踪标头信息传递 EventBridge:

  • 默认HTTP标头-X-Ray SDK 会自动填充跟踪标头作为所有调用目标的X-Amzn-Trace-IdHTTP标头。要了解有关默认HTTP标题的更多信息,请参阅《AWS X-Ray 开发者指南》中的 Tracing 标题

  • TraceHeader系统属性TraceHeader 是为PutEventsRequestEntry 将 X-Ray 跟踪标头传送 EventBridge 到目标而保留的属性。如果您同时使用PutEventsRequestEntry,则PutEventsRequestEntry会覆盖HTTP跟踪标头。

注意

跟踪标头不会计入 PutEventsRequestEntry 事件大小。有关更多信息,请参阅 计算 PutEvents 活动条目大小

以下视频演示了如何使用 X-Ray 以及 EventBridge 一起使用: