导出器
将遥测数据发送到 OpenTelemetry Collector,以确保其被正确导出。 在生产环境中使用 Collector 是最佳实践。若要可视化你的遥测数据,可将其导出到后端系统,例如 Jaeger、Zipkin、 Prometheus,或某个特定厂商的后端。
可用的导出器
镜像仓库中包含一份 Go 可用导出器的列表。
在所有导出器中,OpenTelemetry 协议 (OTLP) 导出器是以 OpenTelemetry 数据模型为基础设计的, 能够无信息丢失地输出 OTel 数据。此外,许多处理遥测数据的工具都支持 OTLP (例如 Prometheus、Jaeger 和大多数厂商),在你需要时为你提供高度的灵活性。 若要了解更多关于 OTLP 的信息,请参阅 OTLP 规范。
本页面介绍了主要的 OpenTelemetry Go 导出器以及如何进行配置。
控制台
控制台导出器适用于开发和调试任务,是最简单的设置方式。
控制台链路追踪
go.opentelemetry.io/otel/exporters/stdout/stdouttrace
该包实现了将链路(traces)数据输出到控制台的导出器(exporter)。
控制台指标
go.opentelemetry.io/otel/exporters/stdout/stdoutmetric
该包实现了将指标(metrics)数据输出到控制台的导出器。
控制台日志 (Experimental)
go.opentelemetry.io/otel/exporters/stdout/stdoutlog
该包实现了将日志(logs)输出到控制台的导出器。
OTLP
若你希望将 Trace 数据发送到 OTLP 端点(例如 collector 或者 Jaeger >= v1.35.0),你需要配置一个 OTLP 导出器,将数据发送到对应地址。
基于 HTTP 的 OTLP 链路追踪
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp
提供了使用 HTTP 协议,并以 protobuf 二进制格式作为载荷的 OTLP 链路导出器。
基于 gRPC 的 OTLP 链路追踪
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc
提供了使用 gRPC 实现的 OTLP 链路导出器(exporter)。
Jaeger
从 v1.35.0 开始,Jaeger 支持以 OTLP 端点形式运行。你可以通过以下方式在 Docker 容器中试用: Jaeger,并能够实现链路追踪可视化。
docker run -d --name jaeger \
-e COLLECTOR_OTLP_ENABLED=true \
-p 16686:16686 \
-p 4317:4317 \
-p 4318:4318 \
jaegertracing/all-in-one:latest
基于 HTTP 的 OTLP 指标
go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp
提供了使用 HTTP 协议,并以 protobuf 二进制格式作为载荷实现的 OTLP 指标导出器。
基于 gRPC 的 OTLP 指标
go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc
提供了使用 gRPC 实现的 OTLP metrica 指标导出器。
通过 HTTP 的 OTLP 日志(Experimental)
go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp
提供了使用 HTTP 协议,并以 protobuf 二进制格式作为载荷实现的 OTLP 日志导出器。
通过 gRPC 的 OTLP 日志(Experimental)
go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploggrpc
提供了使用 gRPC 实现的 OTLP 日志导出器。
Prometheus (Experimental)
Prometheus 导出器通过 Prometheus 抓取 HTTP 端点来报告指标。
go.opentelemetry.io/otel/exporters/prometheus
提供了 Prometheus 指标导出器的实现。
有关如何使用 Prometheus 导出器的更多信息,请参考 prometheus example
Feedback
Was this page helpful?
Thank you. Your feedback is appreciated!
Please let us know how we can improve this page. Your feedback is appreciated!