You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

配置AWS X-Ray遇两类问题求助:上下文错误与Lambda追踪无数据

AWS X-Ray 问题解决方案

问题1:创建Segment时上下文缺失报错

报错Error: Failed to get the current sub/segment from the context.是因为X-Ray上下文未正确初始化,或在无父Segment的环境中尝试获取子Segment。

AWSXRay.setContextMissingStrategy("LOG_ERROR");必须放在所有X-Ray相关代码的最开头——即加载X-Ray SDK之后、任何业务代码或其他依赖加载之前。以Node.js Lambda为例:

const AWSXRay = require('aws-xray-sdk');
// 立即设置上下文缺失策略
AWSXRay.setContextMissingStrategy("LOG_ERROR");

// 后续加载其他依赖或编写业务逻辑
const AWS = AWSXRay.captureAWS(require('aws-sdk'));

exports.handler = async (event) => {
  // 尝试获取Segment
  const segment = AWSXRay.getSegment();
  // 业务代码...
};

该设置会让X-Ray在上下文缺失时仅记录日志,而非抛出错误中断程序。

问题2:Lambda开启追踪但X-Ray无数据

已开启Lambda追踪却看不到实例数据,需检查以下几点:

  • 执行角色权限:确保Lambda执行角色附加了AWSXRayDaemonWriteAccess策略,未添加的话需在IAM控制台为角色补充该权限。
  • 追踪模式确认:再次检查Lambda配置的X-Ray追踪模式是否为Active(从截图看已设置,但需确认无后续修改)。
  • Lambda执行状态:测试时Lambda是否成功执行?若执行报错(如代码异常),可能不会生成追踪数据。
  • X-Ray控制台时间范围:确认控制台筛选的时间范围包含测试时间,比如切换到「最近1小时」或自定义区间。
  • 托管运行时检查:若使用自定义运行时,需确保X-Ray Daemon在环境中运行;托管运行时(如Node.js、Python)AWS会自动管理Daemon,无需额外配置。

内容的提问来源于stack exchange,提问作者TanDev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 08:53:18