一、接入方案选型
APM 支持 OpenTelemetry、SkyWalking 等多种上报协议。OpenTelemetry 社区活跃度高,技术更迭迅速,广泛兼容主流编程语言、组件与框架,请优先选择 OpenTelemetry 方案,关于 OpenTelemetry 的更多信息请参考 OpenTelemetry 网站。
对于部署在 Kubernetes 的应用,请优先选择 Operator 模式自动接入,节省安装探针和修改配置方面的工作量,关于 Operator 模式的更多信息请参考安装 tencent-opentelemetry-operator。
二、非腾讯云环境是否可以接入?
可以,只要应用和 APM 服务端之间的网络可达,就可以接入。APM 提供了公网接入点和内网接入点,对于非腾讯云环境(本地 IDC 或者其他云)的应用,可以使用公网接入点;也可以通过专线接入(Direct Connect,DC)等方式连通腾讯云 VPC,使用内网接入点,以获得更好的网络质量。
三、接入方式
| 应用类型 | OpenTelemetry 方案 | SkyWalking 方案 |
| Go | 通过 OpenTelemetry SDK 接入 Go 应用(推荐)通过 OpenTelemetry-Go 探针接入 Go 应用(推荐) | 通过 SkyWalking-Go 接入 Go 应用 |
| Java | K8s 环境自动接入 Java 应用 (推荐)通过腾讯云增强版 OpenTelemetry Java 探针接入(推荐) | 通过 SkyWalking 协议接入 Java 应用 |
| Python | K8s 环境自动接入 Python 应用 (推荐)通过 OpenTelemetry-Python 接入 Python 应用(推荐) | 通过 SkyWalking 协议接入 Python 应用 |
| PHP | 通过 OpenTelemetry-PHP 接入 PHP 应用(推荐) | – |
| Node.js | K8s 环境自动接入 Node.js 应用 (推荐)通过 OpenTelemetry-JS 方案接入 Node.js 应用(推荐) | – |
| .NET | K8s 环境自动接入 .NET 应用 (推荐)通过 OpenTelemetry-dotnet 接入 .NET 应用(推荐) | – |
| 其他语言 | 接入其他语言编写的应用 | – |