监控 Jaeger
Jaeger 本身是一个基于微服务的分布式系统。如果在生产环境中运行它,您可能需要为不同的组件设置适当的监控,例如确保后端不会被过多的追踪数据饱和。
请参阅 OpenTelemetry Collector 文档 ,了解配置内部遥测的详细信息。
指标
下面是一个获取指标的示例 curl
调用
curl -s http://jaeger-collector:8888/metrics
以下指标特别值得关注
otelcol_receiver_accepted_spans
otelcol_receiver_refused_spans
otelcol_exporter_sent_spans
otelcol_exporter_send_failed_spans
前两个指标描述了 Jaeger 接收的 Span 数量。后两个指标表示发送到存储的 Span 数量。在正常情况下,accepted
和 sent_spans
计数器应该彼此接近。
指标上的标签允许区分不同的接收器和导出器。例如,带有所有标签的第一个指标可能如下所示(为了可读性而格式化)
otelcol_receiver_accepted_spans{
receiver="otlp",
service_instance_id="f91d66c2-0445-42bf-a062-32aaed09facf",
service_name="jaeger",
service_version="2.0.0",
transport="http"
} 44
日志记录
日志默认以纯文本格式输出到 stderr
。对于生产部署,推荐的日志详细级别是 info
或 warning
。
追踪
Jaeger 能够追踪自身的一些组件,即对 Query 服务的请求。例如,如果您按照入门中所述启动 all-in-one
,并多次刷新 UI 屏幕,您将在 Services 下拉列表中看到 jaeger
。
通过设置 OTEL_TRACES_SAMPLER=always_off
环境变量可以禁用自身追踪。