应用性能监控 APM 遵循 OpenTelemetry 协议标准,理论上支持接入所有语言编写的应用。用户可以从开源社区获取对应的接入方案,将监控数据上报到应用性能监控 APM 服务端,基于腾讯云控制台以及云 API 实现分布式链路追踪以及应用性能管理。
接入步骤
选择接入方案
根据不同的编程语言,以及在应用中引入的框架与类库,从 OpenTelemetry 开源社区获取对应的接入方案,详情请参考 OpenTelemetry 社区 API & SDK 列表。对于不同的语言,OpenTelemetry 社区提供的接入方案存在差异,请确保选择的接入方案与编程语言和框架的版本兼容。
获取接入点和 Token
1. 登录 腾讯云可观测平台 控制台。
2. 在左侧菜单栏中选择应用性能监控,单击应用列表 > 接入应用。
3. 在右侧弹出的数据接入抽屉框中,单击任意一种语言,选择您所要接入的地域以及业务系统。
4. 选择接入协议类型为 OpenTelemetry。
5. 上报方式选择您所想要的上报方式,获取您的接入点和 Token。
说明:
内网上报:使用此上报方式,您的服务需运行在腾讯云 VPC。通过 VPC 直接联通,在避免外网通信的安全风险同时,可以节省上报流量开销。
外网上报:当您的服务部署在本地或非腾讯云 VPC 内,可以通过此方式上报数据。请注意外网通信存在安全风险,同时也会造成一定上报流量费用。
修改接入配置
基于从社区获取的接入方案,修改如下配置项:
接入点:在 OpenTelemetry 接入方案中,接入点通常用
endpoint
字段表达,代表 APM 服务端提供的上报地址,需要替换为您从控制台获取的接入点。应用名:在 OpenTelemetry 接入方案中,应用名通常用
service.name
字段表达。多个使用相同应用名接入的应用进程,在 APM 中会表现为相同应用下的多个实例。应用名最长63个字符,只能包含小写字母、数字及分隔符“ - ”,且必须以小写字母开头,数字或小写字母结尾。Token:作为 Resource 的属性传入,对应的 key 为
token
。需要替换为您从控制台获取的 Token。实例名:作为 Resource 的属性传入,对应的 key 为
host.name
。对于每一个接入的应用实例,实例名是唯一标识,通常情况下可以设置为应用实例的 IP 地址。部分接入方案可以自动获取 IP 地址作为实例名,您可以根据实际情况决定是否主动填写实例名。opentelemetry-instrument \\--traces_exporter otlp_proto_grpc \\--metrics_exporter none \\--service_name myService \\--resource_attributes token=myToken,host.name=192.168.0.10 \\--exporter_otlp_endpoint https://pl-demo.ap-guangzhou.apm.tencentcs.com:4317/ \\python3 app.py
接入应用
基于社区开源方案的指引,完成接入工作。对于非自动接入方案,以及自动接入方案不能覆盖的框架与组件,可能还需要额外修改相关业务代码进行手动埋点。
接入验证
启动应用后,在有正常流量的情况下,应用性能监控 > 应用列表 中将展示接入的应用,点击应用名称/ID 进入应用详情页,再选择实例监控,即可看到接入的应用实例。由于可观测数据的处理存在一定延时,如果接入后在控制台没有查询到应用或实例,请等待30秒左右。