OpenTelemetry OTLP 接入
DataBuff 是开源、AI 原生的 OpenTelemetry APM 后端。Ingest 服务通过 OTLP(OpenTelemetry Protocol)接收遥测数据,供 Web 端做链路追踪、服务指标、拓扑与 AI 排障。
支持的信号
| 信号 | OTLP gRPC (4317) | OTLP HTTP (4318) |
|---|---|---|
| Trace | 支持 | 支持(/v1/traces) |
| Metrics | 支持 | 支持(/v1/metrics) |
| Logs | 支持 | 支持(/v1/logs) |
前置条件
先完成 Docker 或 Kubernetes 安装,确认 Ingest 可达及 OTLP 端口(默认 4317 gRPC、4318 HTTP)。
接入地址
将 <ingest-host> 替换为 Ingest 所在主机名或 IP(与安装脚本输出一致)。
| 协议 | 地址 | 说明 |
|---|---|---|
| OTLP/gRPC | <ingest-host>:4317 | 推荐 Agent / Collector 使用 |
| OTLP/HTTP | http://<ingest-host>:4318 | 按信号配置时可使用 /v1/traces、/v1/metrics |
Docker 默认安装会在宿主机暴露上述端口。
应用 SDK(环境变量)
bash
export OTEL_EXPORTER_OTLP_ENDPOINT="http://<ingest-host>:4318"
export OTEL_EXPORTER_OTLP_PROTOCOL="http/protobuf"
# gRPC 示例:
# export OTEL_EXPORTER_OTLP_ENDPOINT="http://<ingest-host>:4317"
# export OTEL_EXPORTER_OTLP_PROTOCOL="grpc"
export OTEL_SERVICE_NAME="my-service"OpenTelemetry Collector
yaml
receivers:
otlp:
protocols:
grpc:
endpoint: 0.0.0.0:4317
http:
endpoint: 0.0.0.0:4318
exporters:
otlp:
endpoint: "<ingest-host>:4317"
tls:
insecure: true
service:
pipelines:
traces:
receivers: [otlp]
exporters: [otlp]
metrics:
receivers: [otlp]
exporters: [otlp]
logs:
receivers: [otlp]
exporters: [otlp]上报 Logs 时,SDK 可设置:
bash
export OTEL_LOGS_EXPORTER=otlp验证
- 可选安装 Demo 应用,持续上报 Trace。
- 打开 Web UI(
http://<host>:27403),在应用性能中查看服务与链路。
深入了解数据如何写入与查询,见 遥测数据流与存储。