通过 OpenTelemetry-Python 探针接入

最近更新时间:2025-12-05 15:19:52

我的收藏
本文将通过相关操作介绍如何通过腾讯云 OpenTelemetry-Python 探针接入 Python LLM 应用。

支持的 LLM 组件与框架

腾讯云 OpenTelemetry-Python 探针基于社区 OpenTelemetry Python 项目二次开发,同时支持对常见 LLM 框架和传统(非 LLM)Python 框架的自动埋点,兼容 OpenTelemetry 协议标准,能够和其他使用 OpenTelemetry 方案接入的应用实现链路信息互通。腾讯云 OpenTelemetry-Python 探针支持以下组件或框架:
支持的组件与框架
链接
LLM 组件与框架
OpenAI SDK(openai >= 0.27.0):OpenAI 官方提供的 API 封装,用于直接调用所有兼容 OpenAI 标准的大模型。
Ollama(ollama >= 0.4.0):本地运行和管理开源大模型的轻量化推理框架。
LangChain / LangGraph(langchain-core > 0.1.0):用于构建和编排大模型应用的工作流框架,支持复杂链路与状态管理。
LlamaIndex(llama-index >= 0.7.0,llama-index-core >= 0.7.0):专注于把外部数据接入 LLM 的 RAG 框架,提供检索与索引能力。
传统 Python 组件与框架
完整的 支持列表
说明:
该方案支持 Python 3.9及以上版本。

接入流程

获取接入点与 token

1. 登录 腾讯云可观测平台 控制台。
2. 在左侧菜单栏中选择 LLM 可观测,单击应用列表 > 接入应用
3. 选择您所要接入的地域以及业务系统
4. 选择您想要的上报方式,获取您的接入点Token
说明:
内网上报:使用此上报方式,您的服务需运行在腾讯云 VPC。通过 VPC 直接连通,在避免外网通信的安全风险的同时,可以节省上报流量开销。
外网上报:当您的服务部署在本地或非腾讯云 VPC 内,可以通过此方式上报数据。请注意外网通信存在安全风险,同时也会造成一定上报流量费用。

安装 pip 包

通过pip命令安装腾讯云自研探针,其中包含 OpenTelemetry-SDK 的相关依赖。
pip install tapm-distro opentelemetry-exporter-otlp==1.34.1

tapm-bootstrap -a install

命令行方式上报

加上 tapm-instrument 前缀完成埋点和启动,假设原来的项目启动命令是python app.py,现在可以通过如下命令启动 Python 应用。
tapm-instrument --traces_exporter otlp \\
--metrics_exporter otlp \\
--logs_exporter none \\
--service_name <service_name> \\
--resource_attributes "token=<token>,host.name=<host.name>" \\
--exporter_otlp_endpoint <endpoint> \\
python app.py
对应的字段说明如下,请根据实际情况进行替换。
<service_name> :应用名,多个使用相同 serviceName 接入的应用进程,会表现为相同应用下的多个实例。应用名最长63个字符,只能包含小写字母、数字及分隔符“ - ”,且必须以小写字母开头,数字或小写字母结尾。
<token> :前置步骤中拿到业务系统 Token。
<host.name>:该实例的主机名,是应用实例的唯一标识,通常情况下可以设置为应用实例的 IP 地址。
<endpoint> :前置步骤中拿到的接入点。

接入验证

完成接入工作后,启动 LLM 应用,在 LLM 可观测 > 应用列表 页面将展示接入的应用。由于可观测数据的处理存在一定延时,如果接入后在控制台没有查询到应用或实例,请等待30秒左右。
同时,在 LLM 可观测 > 链路追踪 中,也能够查询到相关的 Span 记录,通过单击第一列 traceID 对应的链接,可以进入链路详情视图分析链路的每个环节。

单击其中的 Span,能够获取更多详细信息,例如下图: