用途:该技能用于为 Java、.NET、Node.js、Python、Ruby 应用安装和配置 OpenTelemetry 自动插桩,帮助自动采集 HTTP、数据库和框架内部 span。
原则:优先采用零代码自动插桩与基于代码的自动插桩,二者可按用例、语言和框架互换;框架原生 OTel 与自动插桩元包/代理可互补使用,但需确认不会对同一请求产生重复 span;不使用手动插桩(不得添加 tracer.startSpan() 等调用);框架自带 OTel 集成时优先于外部代理(除非语言部分另有说明);始终使用最新版本自动插桩库。
工作流:1. 与开发者确认服务名(service.name);2. 运行 discover 参考扫描目标目录,识别运行时、语言、框架、包管理器、锁文件、测试框架、容器与部署线索、现有 OTel 及非 OTel 厂商插桩,多服务时让开发者选择目标;3. 确定目标平台(VM/裸机或 Kubernetes);4. 查看 Observe APM 支持矩阵(Java、.NET、Python、Node.js、Ruby 各有对应文档链接);5. 运行冲突检查参考,查询 Observe 中是否已存在同名服务,冲突时建议改名;6. 如发现 Datadog、New Relic、Dynatrace、Splunk、AppDynamics、Elastic APM 等非 OTel 代理,暂停并说明双重插桩可能导致重复 span、上下文传播冲突、重复导出器或误导性遥测,建议替换或停用后再继续;7. 如已有 OTel 插桩,先运行现有 OTel 审计,结果分为 healthy(无需改动,指向 opentelemetry-validation)、improve(就地修复)或 uncertain(暂停询问);8. 运行版本解析命令获取各自动插桩包最新稳定版,计划与安装命令均须使用解析出的版本;9. 汇总上下文并向开发者呈现可审核计划(库与版本、按 Web/HTTP、Web/RPC、ORM、数据库客户端、缓存客户端、消息客户端分类,并按支持矩阵列出 Trace Explorer、Service Catalog、Service Maps、Service Inspector、R.E.D Metrics、Deployments、错误/异常跟踪,以及依赖、文件与启动改动、环境变量、已知限制),获批后再实施;10. 按语言参考(java、dotnet、python、nodejs、ruby、configure)应用改动;11. 按 configure 参考提供目标平台运维指导,不直接改动开发者基础设施,仅提供需执行的命令;确认是否已安装 Observe Agent,未安装则按环境参考 deploy-k8s-explorer 或 deploy-linux-host-explorer,最后建议触发 opentelemetry-validation 校验。
限制:不改动基础设施;缺失事实暂未提供。