
aws-observability
热门构建、配置、调试和优化 AWS 可观测性,涵盖 CloudWatch(Log Insights、指标 Metrics、告警 Alarms、仪表板 Dashboards、EMF)、X-Ray、CloudTrail 和 ADOT(AWS Distro for OpenTelemetry),并支持通过 ADOT 自动埋点 SDK 为服务接入 Application Signals。涵盖 Log Insights 查询、告警(指标告警、复合告警、异常检测告警)、仪表板、自定义指标/EMF、X-Ray 链路追踪与采样、ADOT Collector 配置、CloudTrail 操作审计,以及通过 ADOT SDK 实现端到端的 Application Signals 接入(CloudWatch Observability EKS 插件、CloudWatch Agent IAM、OTLP 端点、ServiceEvents、动态探针 Dynamic Instrumentation),支持动态探针的断点与快照抓取、在运行中服务中抓取实时数据,无需重新部署即可直接排查调试。适用于 CloudWatch、告警、仪表板、EMF、X-Ray、Trace 链路追踪、CloudTrail、ADOT、监控、Synthetics 拨测/金丝雀测试,以及为服务开启/接入/埋点 Application Signals。不适用于普通应用日志记录或安全威胁检测。
构建、配置、调试和优化 AWS 可观测性,涵盖 CloudWatch(Log Insights、指标 Metrics、告警 Alarms、仪表板 Dashboards、EMF)、X-Ray、CloudTrail 和 ADOT(AWS Distro for OpenTelemetry),并支持通过 ADOT 自动埋点 SDK 为服务接入 Application Signals。涵盖 Log Insights 查询、告警(指标告警、复合告警、异常检测告警)、仪表板、自定义指标/EMF、X-Ray 链路追踪与采样、ADOT Collector 配置、CloudTrail 操作审计,以及通过 ADOT SDK 实现端到端的 Application Signals 接入(CloudWatch Observability EKS 插件、CloudWatch Agent IAM、OTLP 端点、ServiceEvents、动态探针 Dynamic Instrumentation),支持动态探针的断点与快照抓取、在运行中服务中抓取实时数据,无需重新部署即可直接排查调试。适用于 CloudWatch、告警、仪表板、EMF、X-Ray、Trace 链路追踪、CloudTrail、ADOT、监控、Synthetics 拨测/金丝雀测试,以及为服务开启/接入/埋点 Application Signals。不适用于普通应用日志记录或安全威胁检测。
AWS Observability
概览
提供覆盖指标(Metrics)、日志(Logs)与链路追踪(Traces)全生命周期的 AWS 可观测性专业能力:通过 ADOT(AWS Distro for OpenTelemetry)自动埋点 SDK 和 ServiceEvents,为运行在 EC2、ECS、EKS 及 Lambda 上(支持 Python、Node.js、Java 和 .NET)的服务开启并接入 Application Signals,使其成功展示在 Application Signals 控制面板中。
搭配 AWS MCP server 使用效果最佳——可直接运行 CLI 命令、查询 CloudWatch 并校验配置。所有指引同样适用于标准的 AWS CLI 命令行操作。
注意: 参考文档中包含的具体运行时版本、配额上限和功能支持矩阵可能会随 AWS 更新而变动。当需要精确信息时(如部署生产环境、选择运行时或核对配额上限),请以最新的 AWS 官方文档为准,切勿完全依赖本文档中的静态数值。
场景路由
| 用户需求 | 操作指引 |
|---|---|
| 为服务开启/接入 Application Signals(自动埋点) | 阅读 application-signals-onboarding.md |
| 在 CI/CD 中透传 ServiceEvents 的 Git 与部署元数据 | 阅读 application-signals-cicd-metadata.md |
| 针对特定平台/语言的接入步骤 | 阅读对应的 references/appsignals-guides/<platform>-<language>.md(例如 eks-python.md) |
| 编写 Log Insights 查询语句 | 阅读 log-insights.md |
| 配置告警(指标告警、复合告警、异常检测) | 阅读 alarms.md |
| 上报自定义指标或使用 EMF 格式 | 阅读 metrics.md |
| 配置 X-Ray 链路追踪或 ADOT | 阅读 tracing.md |
| 构建 CloudWatch 仪表板 | 阅读 dashboards.md |
| 排查可观测性常见故障 | 阅读 troubleshooting.md —— 优先查看排查前 5 大高频踩坑与修复方案 |
| 排查 Canary 拨测失败 | 阅读 synthetics.md —— 参考“常见失败原因”表格 |
| CloudTrail 操作审计 | 阅读 cloudtrail.md |
| 使用 CDK 配置 Lambda 监控 | 使用 alarm-template.ts 作为起始模板 |
| 创建 Synthetics 拨测(Canary) | 阅读 synthetics.md |
| 配置 ADOT Collector | 使用 otel-config.yaml 作为起始模板 |
| 通过断点/快照调试运行中的服务 — 动态探针 Dynamic Instrumentation(会直接修改线上运行服务并捕获实时数据) | 在采取任何行动前,请先完整阅读 dynamic-instrumentation.md。在执行任何创建/删除操作前须向用户确认;在执行重大动作前进行叙述说明:观察现象 → 提出假设 → 方案建议 → 预期结果。通过源码/代码检查诊断线上运行服务的根本原因。仅凭源码检查只能提出假设,不能确认根因。在运行时证据确认前,所有怀疑的原因均应保持暂定状态。 |
| 跨多个领域/场景 | 优先阅读最具体的参考文件,必要时再查阅其他文档 |
参考文件
| 文件 | 内容说明 |
|---|---|
| application-signals-onboarding.md | 开启 Application Signals 自动埋点:EKS 插件、CloudWatch Agent IAM、OTLP 端点、ServiceEvents 环境变量、动态探针 —— 按平台与语言划分的两层配置范围 |
| application-signals-cicd-metadata.md | 在 CI/CD 中透传 ServiceEvents 的 Git 和部署元数据(即 5 个 OTEL_AWS_SERVICE_EVENTS_* 环境变量) |
references/appsignals-guides/(例如 eks-python.md) |
16 个按平台 × 语言划分的接入指南(EC2/ECS/EKS/Lambda × Python/Node.js/Java/.NET) |
| alarms.md | 指标告警、复合告警、异常检测告警 —— 配置说明、约束限制与推荐默认值 |
| log-insights.md | 完整的查询语法、命令、函数、已知问题及可复用的查询语句库 |
| metrics.md | 自定义指标、EMF 规范、指标过滤器、高分辨率指标及数据留存规则 |
| tracing.md | X-Ray 迁移至 ADOT 方案、采样规则、注解(Annotations)与元数据(Metadata)对比、Collector 配置 |
| dashboards.md | 小部件(Widget)类型、跨账号/跨区域视图、动态标签与共享设置 |
| troubleshooting.md | 涵盖所有可观测性服务的“报错现象 → 根因分析 → 修复方案”故障排查指引 |
| cloudtrail.md | 操作审计、事件类型以及 S3 + Athena 查询案例 |
| synthetics.md | Canary 拨测运行时/蓝图约束限制、VPC 网络配置及高频失败原因 |
| alarm-template.ts | 基于 CDK 的 Lambda 监控最佳实践模板(告警 + 仪表板) |
| otel-config.yaml | 用于 X-Ray 链路追踪 + CloudWatch EMF 指标的 ADOT Collector 配置文件 |
| dynamic-instrumentation.md | 动态探针(Dynamic Instrumentation)调试闭环 —— 在线上代码设置断点/探针、快照捕获与关联分析、创建/删除二次确认门禁、快照 PII 敏感数据处理。通过 scripts/di_instrumentation.py + scripts/di_snapshots.py 脚本运行。 |





