tencent cloud

腾讯云可观测平台

动态与公告
产品动态
产品简介
产品概述
产品优势
基本功能
基本概念
应用场景
使用限制
购买指南
云产品监控
应用性能监控
终端性能监控
前端性能监控
云拨测
Prometheus 监控服务
Grafana 服务
事件总线
云压测
快速入门
监控概览
实例分组
云产品监控
应用性能监控
云拨测
云压测
Prometheus 监控服务
Grafana 服务
创建 Dashboard
事件总线
告警服务
云产品监控
云产品监控指标
控制台操作指南
云服务器监控组件
云产品监控对接 Grafana
故障处理
实践教程
应用性能监控
应用性能监控简介
接入指南
控制台操作指南
实践教程
参考信息
常见问题
终端性能监控
终端性能监控概述
控制台操作指南
接入指南
实践教程
前端性能监控
前端性能监控简介
控制台操作指南
接入指南
常见问题
云拨测
产品简介
控制台操作指南
常见问题
云压测
云压测概述
控制台操作指南
实践教程
JavaScript API 列表
常见问题
Prometheus 监控
Prometheus 监控简介
接入指南
控制台操作指南
实践教程
Terraform
常见问题
Grafana 服务
产品简介
控制台操作指南
Grafana 平台常用功能指引
常见问题
Dashboard
什么是 Dashboard
控制台操作指南
告警管理
控制台操作指南
故障处理
常见问题
事件总线
事件总线简介
控制台操作指南
实践教程
常见问题
报表管理
常见问题
腾讯云可观测平台常见问题
告警服务相关
一般性问题
监控图表相关
云服务器监控组件相关
动态阈值告警相关
云监控对接 Grafana 相关
文档阅读指南
相关协议
应用性能监控服务等级协议
APM 隐私协议
APM 数据处理和安全协议
前端性能监控服务等级协议
终端性能监控服务等级协议
云拨测服务等级协议
Prometheus 监控服务服务等级协议
Grafana 服务服务等级协议
云压测服务等级协议
云压测使用限制
Cloud Monitor Service Level Agreement
词汇表

K8s 环境自动接入 Java 应用 (推荐)

PDF
聚焦模式
字号
最后更新时间: 2026-01-29 10:45:57
对于部署在 Kubernetes 上的 Java 应用,APM 提供自动接入方案,可以实现探针自动注入,方便应用快速接入。
K8s 环境自动接入的 Java 应用将被自动注入腾讯云增强版 OpenTelemetry Java 探针(TencentCloud-OTel Java Agent),腾讯云增强版 OpenTelemetry Java 探针基于开源社区的 OpenTelemetry-java-instrumentation 进行二次开发,遵循 Apache License 2.0 协议,在探针包中对 OpenTelemetry License 进行了引用。在开源探针的基础上,腾讯云增强版 OpenTelemetry Java 探针在埋点密度、高阶诊断、性能保护、企业级能力等方面做了重要的增强。

前提条件

请参考 增强版 OpenTelemetry Java 探针支持的 Java 版本和框架,确保 Java 版本和应用服务器在探针支持的范围内。对于自动埋点支持的依赖库和框架,在接入成功后即可完成数据上报,不需要修改代码。同时,腾讯云增强版 OpenTelemetry Java 探针遵循了 OpenTelemetry 协议标准,如果自动埋点不满足您的场景,或者需要增加业务层埋点,请使用 OpenTelemetry API 进行自定义埋点

步骤1:安装 Operator

在 K8s 集群安装 Operator,推荐在 APM 控制台一键安装 Operator,详情请参考 安装 tencent-opentelemetry-operator

步骤2:在工作负载添加 annotation

以容器服务 TKE 为例,通过如下步骤可以在工作负载中添加 annotation,对于通用 K8s 集群,请通过 kubectl 等工具添加 annotation。
1. 登录 容器服务 控制台。
2. 单击集群,进入对应的 TKE 集群。
3. 工作负载中找到需要接入 APM 的应用,单击更多,单击编辑 yaml
4. 在 Pod annotation 中添加如下内容,单击完成,即可以完成接入。
cloud.tencent.com/inject-java: "true"
cloud.tencent.com/otel-service-name: my-app # 应用名,多个使用相同应用名接入的进程,在 APM 中会表现为相同应用下的多个实例。
# 应用名最长63个字符,只能包含小写字母、数字及分隔符("-"),且必须以小写字母开头,数字或小写字母结尾。
请注意,此内容需要添加到 spec.template.metadata.annotations 中,作用于 Pod 的 annotation,而不是工作负载的 annotation,可以参考如下代码片段:
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
k8s-app: my-app
name: my-app
namespace: default
spec:
selector:
matchLabels:
k8s-app: my-app
template:
metadata:
labels:
k8s-app: my-app
annotations:
cloud.tencent.com/inject-java: "true" # 添加到此处
cloud.tencent.com/otel-service-name: my-app
spec:
containers:
image: my-app:0.1
name: my-app

接入验证

对工作负载添加 annotation 后,基于不同的发布策略,触发应用 Pod 的重启。新启动的 Pod 会自动注入探针,并连接到 APM 服务端上报监控数据,上报的业务系统为 Operator 的默认业务系统。在有正常流量的情况下,应用性能监控 > 应用列表 中将展示接入的应用。单击应用名称/ID 进入应用详情页,再选择实例分析,即可看到接入的应用实例。由于可观测数据的处理存在一定延时,如果接入后在控制台没有查询到应用或实例,请等待30秒左右。

自定义埋点

当自动埋点不满足您的场景或者需要增加业务层埋点时,请参考 自定义埋点,使用 OpenTelemetry API 添加自定义埋点。

更多接入配置项(可选)

在工作负载级别,可以添加更多的 annotation 对接入行为进行调整:
配置项
描述
cloud.tencent.com/apm-token
指定 APM 业务系统的 Token。若不添加此项配置项,则使用 Operator的配置(对应 Operator 的 env.APM_TOKEN 字段)。
cloud.tencent.com/java-instr-version
指定 Java 探针版本。若不添加此项配置项,则使用 Operator 的配置(对应 Operator 的 env.JAVA_INSTR_VERSION 字段)。取值为 latest(默认)或具体版本号,具体的版本号列表请参考 探针(Agent)版本信息,非必要情况下不推荐填写此字段。
cloud.tencent.com/container-names
指定注入探针的 container。该配置项支持将探针注入到多个 container 中,只需在该配置项的值中填写多个 container 名并用英文逗号间隔开。若不添加此项配置项,则探针将默认注入到第一个 container 中。该配置项在 Operator 0.88及以上版本支持。


帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈