news 2026/5/6 5:35:23

AWS Lambda Python 应用可观测最佳实践(DDTrace)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
AWS Lambda Python 应用可观测最佳实践(DDTrace)

概述

随着企业核心业务全面向云原生和无服务器架构迁移,AWS Lambda 因其免运维、自动扩缩容和按调用计费的优势,已成为支撑高并发、事件驱动型业务的首选计算平台。然而,Serverless 的“黑盒化”特征也带来了新的可观测性挑战:

  • 分布式链路断裂:Lambda 函数往往作为事件触发链中的关键一环,与 API Gateway、S3、SQS、DynamoDB 等服务交叉调用,传统 APM 难以串联完整调用链。
  • 冷启动与性能瓶颈难定位:函数初始化耗时、依赖库加载、网络延迟等性能指标缺乏细粒度追踪,影响用户体验与成本控制。
  • 多环境、多账号下的观测一致性缺失:Dev、QA、Prod 环境函数数量众多,若没有统一的链路标准和标签规范,问题定位效率低,跨团队协作成本高。

为保障线上稳定性、优化函数性能、实现 Serverless 场景下的可观测闭环,亟需基于 Python 运行时 构建一套标准化方案,提供从原理、代码示例到生产级部署的完整落地方案,助力企业在 Serverless 架构下实现“问题可追踪、性能可量化、成本可优化”的目标。

本文介绍如何通过 Lambda 服务接入 DDTrace 组件实现链路数据采集并上报至观测云。

实践

运行环境

  • Lambda 函数(Zip 部署)
  • Runtime Language:Python (3.8-3.13)

准备 Lambda Layer

需要新增以下两个 Layer:

  • DataDog Layer:用于链路插桩
  • DataKit Layer: 用于接收 datadog 的可观测数据

新增 DataKit Layer

参考:AWS Lambda 扩展 > 添加 DataKit 层

新增 DataDog Layer

  • AWS 全球区

选择合适的 ARN:

# Use this format for x86-based Lambda deployed in AWS commercial regions arn:aws:lambda:<AWS_REGION>:464622532012:layer:Datadog-<RUNTIME>:118 # Use this format for arm64-based Lambda deployed in AWS commercial regions arn:aws:lambda:<AWS_REGION>:464622532012:layer:Datadog-<RUNTIME>-ARM:118 # Use this format for x86-based Lambda deployed in AWS GovCloud regions arn:aws-us-gov:lambda:<AWS_REGION>:002406178527:layer:Datadog-<RUNTIME>:118 # Use this format for arm64-based Lambda deployed in AWS GovCloud regions arn:aws-us-gov:lambda:<AWS_REGION>:002406178527:layer:Datadog-<RUNTIME>-ARM:118

<AWS_REGION>替换为有效的 AWS 区域,例如us-east-1<RUNTIME>的选项有:Python38、Python39、Python310、Python311、Python312、Python313

  • AWS 中国区

由于 Datadog 并没有在中国区的维护datadog-lambda-python层,所以我们使用pipdatadog-lambda包及其依赖项本地安装到您的函数项目文件夹中。

pip install datadog-lambda -t ./

注意 :datadog-lambda依赖于 ddtrace,而 ddtrace 使用了原生扩展;因此必须在正确架构(x86_64 或 arm64)的 Linux 环境中安装和编译。

将函数的「运行时-处理程序」设置为datadog_lambda.handler.handler

环境变量配置

  • DD_TRACE_ENABLED: 开启分布式追踪默认为 true
  • DD_LAMBDA_HANDLER: 设置为原始处理程序,例如:lambda_function.lambda_handler
  • DD_TRACE_AGENT_URL:http://localhost:9529
  • DD_TRACE_DEBUG:日志输出,默认关闭
  • ENV_DATAWAY:上报数据的 DataWay 地址(token 从工作空间获取)

配置完成后,点击测试,然后可以登陆平台查看链路数据。

效果展示

配置完成后,点击测试,成功后到观测云工作空间后,相关链路以及指标信息。

APM

service:aws.lambda

resource:<Your AWS Lambda FuncName>

指标

指标说明:AWS Lambda 拓展 > 指标

日志

source:awslambda

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/26 8:26:41

Mermaid Live Editor在线图表编辑器:新手快速入门全攻略

Mermaid Live Editor在线图表编辑器&#xff1a;新手快速入门全攻略 【免费下载链接】mermaid-live-editor Edit, preview and share mermaid charts/diagrams. New implementation of the live editor. 项目地址: https://gitcode.com/GitHub_Trending/me/mermaid-live-edit…

作者头像 李华
网站建设 2026/4/29 0:51:10

基于AutoGLM-Phone-9B的端云协同部署|低延迟图文理解落地案例

基于AutoGLM-Phone-9B的端云协同部署&#xff5c;低延迟图文理解落地案例 1. 引言&#xff1a;移动端多模态推理的新范式 随着智能手机在日常生活中的深度渗透&#xff0c;用户对智能交互体验的需求日益增长。传统云端大模型虽具备强大语义理解能力&#xff0c;但受限于网络延…

作者头像 李华
网站建设 2026/5/3 19:51:17

OpenCore Legacy Patcher深度解析:老款Mac系统升级全攻略

OpenCore Legacy Patcher深度解析&#xff1a;老款Mac系统升级全攻略 【免费下载链接】OpenCore-Legacy-Patcher 体验与之前一样的macOS 项目地址: https://gitcode.com/GitHub_Trending/op/OpenCore-Legacy-Patcher 在技术快速迭代的今天&#xff0c;许多用户面临着老款…

作者头像 李华
网站建设 2026/5/5 11:15:21

OrangePi AI Office解锁AI办公新范式,谁说安全、可控、高效不能兼得?

你的会议室/办公电脑/办公桌/文件柜里&#xff0c;是否有一些只能内部查阅讨论、不能外发或上传云端的敏感涉密文件&#xff1f;那些战略草案、合同初稿、研发图纸、财报文件……每一个字都可能涉及组织机密&#xff0c;处理不慎就可能给单位/企业造成诸多麻烦和损失。你当然知…

作者头像 李华
网站建设 2026/5/2 3:42:25

如何用DeepSeek-OCR-WEBUI实现多场景OCR识别?

如何用DeepSeek-OCR-WEBUI实现多场景OCR识别&#xff1f; 1. 引言&#xff1a;从传统OCR到智能文本理解的跃迁 光学字符识别&#xff08;OCR&#xff09;技术早已超越了“扫描识字”的初级阶段。随着深度学习与大模型的发展&#xff0c;现代OCR系统不仅能够精准提取图像中的文…

作者头像 李华
网站建设 2026/5/2 3:42:16

DeepSeek-R1-Distill-Qwen-1.5B模型校准:置信度调整技巧

DeepSeek-R1-Distill-Qwen-1.5B模型校准&#xff1a;置信度调整技巧 1. 引言 1.1 模型背景与开发动机 在当前大语言模型快速演进的背景下&#xff0c;如何提升轻量级模型在复杂推理任务中的表现成为工程落地的关键挑战。DeepSeek-R1-Distill-Qwen-1.5B 是基于 DeepSeek-R1 强…

作者头像 李华