关于 observability-edot-python-migrate
此技能指导将 Python 应用从经典 Elastic APM 迁移到 EDOT。它面向负责应用遥测配置的开发者,提供移除旧配置、安装自动埋点并设置 OTLP 导出的迁移要点。
主要功能
- 01移除经典 APM 依赖和配置
- 02安装 elastic-opentelemetry
- 03通过 edot-bootstrap 安装自动埋点
- 04使用 opentelemetry-instrument 启动应用
- 05配置 OTLP 端点和授权头
适用场景
- 01将 Python 服务从经典 APM 迁移至 EDOT
- 02调整应用入口以启用自动埋点
- 03配置遥测服务名、端点和认证
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ elastic/ agent-skills --skill observability-edot-python-migrate安装后在 Claude Code 中输入/observability-edot-python-migrate确认已加载。
详细介绍
EDOT Python 迁移
进行更改前,请阅读迁移指南:
指南
- 移除所有经典 APM 相关引用:从 requirements 中移除
elastic-apm,从应用代码中移除ElasticAPM(app)/elasticapm.contrib.*,移除app.config['ELASTIC_APM']配置块以及所有ELASTIC_APM_*环境变量 - 使用 pip 安装
elastic-opentelemetry(添加到requirements.txt或等效文件中) - 在映像构建期间运行
edot-bootstrap --action=install,为检测到的库安装自动插桩包 - 使用
opentelemetry-instrument包装应用入口点,例如opentelemetry-instrument gunicorn app:app。否则,不会收集任何遥测数据 - 设置恰好 3 个必需的环境变量:
OTEL_SERVICE_NAME(取代ELASTIC_APM_SERVICE_NAME)OTEL_EXPORTER_OTLP_ENDPOINT——必须是托管 OTLP 端点或 EDOT Collector URL。请勿重复使用旧的ELASTIC_APM_SERVER_URL值。切勿使用 APM Server URL(不得包含apm-server、:8200或/intake/v2/events)OTEL_EXPORTER_OTLP_HEADERS——"Authorization=ApiKey <key>"或"Authorization=Bearer <token>"(取代ELASTIC_APM_SECRET_TOKEN)
- 请勿设置
OTEL_TRACES_EXPORTER、OTEL_METRICS_EXPORTER或OTEL_LOGS_EXPORTER——默认值已经正确 - 切勿在同一个应用中同时运行经典
elastic-apm和 EDOT
示例
完整示例请参阅 EDOT Python 迁移指南。
评论
支持 Markdown