概要

OpenTelemetry Collector の健全性メトリクスダッシュボード

OpenTelemetry Collector 自体の健全性メトリクスを収集するには、Datadog Exporter で Prometheus レシーバーを構成します。

詳しくは、OpenTelemetry プロジェクトドキュメントのPrometheus レシーバーを参照してください。

セットアップ

Collector の構成に以下の行を追加します。

receivers:
  prometheus:
    config:
      scrape_configs:
      - job_name: 'otelcol'
        scrape_interval: 10s
        static_configs:
        - targets: ['0.0.0.0:8888']

データ収集

OpenTelemetry メトリクス説明
otelcol_process_uptimeプロセスのアップタイム
otelcol_process_memory_rss全体の物理メモリ (レジデントセットサイズ)
otelcol_exporter_queue_size再試行キューの現在のサイズ (バッチ単位)
otelcol_exporter_sent_spans宛先に正常に送信されたスパンの数
otelcol_exporter_send_failed_metric_points失敗した宛先への送信試行のメトリクスポイントの数
otelcol_exporter_send_failed_spans失敗した宛先への送信試行のスパンの数
otelcol_process_cpu_secondsCPU ユーザーとシステムの合計時間 (秒単位)
otelcol_receiver_refused_spansパイプラインにプッシュできなかったスパンの数
otelcol_exporter_queue_capacity再試行キューの固定容量 (バッチ単位)
otelcol_receiver_accepted_spansパイプラインに正常にプッシュされたスパンの数
otelcol_exporter_sent_metric_points宛先に正常に送信されたメトリクスポイントの数
otelcol_exporter_enqueue_failed_spans送信キューへの追加に失敗したスパンの数
otelcol_scraper_errored_metric_pointsスクレイピングできなかったメトリクスポイントの数
otelcol_scraper_scraped_metric_points正常にスクレイピングしたメトリクスポイントの数
otelcol_receiver_refused_metric_pointsパイプラインにプッシュできなかったメトリクスポイントの数
otelcol_receiver_accepted_metric_pointsパイプラインに正常にプッシュされたメトリクスポイントの数
otelcol_process_runtime_heap_alloc_bytes割り当てられたヒープオブジェクトのバイト数 (‘go doc runtime.MemStats.HeapAlloc’ を参照)
otelcol_process_runtime_total_alloc_bytesヒープオブジェクトに割り当てられた累計バイト数 (‘go doc runtime.MemStats.TotalAlloc’ を参照)
otelcol_exporter_enqueue_failed_log_records送信キューへの追加に失敗したログレコードの数
otelcol_processor_batch_timeout_trigger_sendタイムアウトトリガーによりバッチが送信された回数
otelcol_exporter_enqueue_failed_metric_points送信キューへの追加に失敗したメトリクスポイントの数
otelcol_process_runtime_total_sys_memory_bytesOS から取得したメモリの総バイト数 (runtime.MemStats.Sys の Go ドキュメントを参照)。
otelcol_processor_batch_batch_size_trigger_sendサイズトリガーによりバッチが送信された回数
otelcol_exporter_sent_log_records宛先に正常に送信されたログレコードの数
otelcol_receiver_refused_log_recordsパイプラインにプッシュできなかったログレコードの数
otelcol_receiver_accepted_log_recordsパイプラインに正常にプッシュされたログレコードの数

完全な構成例

Datadog Exporter を用いた実際に動作する構成の完全な例については、collector-metrics.yaml を参照してください。

ログ出力例

ResourceMetrics #0
Resource SchemaURL: https://opentelemetry.io/schemas/1.6.1
Resource attributes:
     -> service.name: Str(opentelemetry-collector)
     -> net.host.name: Str(192.168.55.78)
     -> service.instance.id: Str(192.168.55.78:8888)
     -> net.host.port: Str(8888)
     -> http.scheme: Str(http)
     -> k8s.pod.ip: Str(192.168.55.78)
     -> cloud.provider: Str(aws)
     -> cloud.platform: Str(aws_ec2)
     -> cloud.region: Str(us-east-1)
     -> cloud.account.id: Str(XXXXXXXXX)
     -> cloud.availability_zone: Str(us-east-1c)
     -> host.id: Str(i-0368add8e328c28f7)
     -> host.image.id: Str(ami-08a2e6a8e82737230)
     -> host.type: Str(m5.large)
     -> host.name: Str(ip-192-168-53-115.ec2.internal)
     -> os.type: Str(linux)
     -> k8s.pod.name: Str(opentelemetry-collector-agent-gqwm8)
     -> k8s.daemonset.name: Str(opentelemetry-collector-agent)
     -> k8s.daemonset.uid: Str(6d6fef61-d4c7-4226-9b7b-7d6b893cb31d)
     -> k8s.node.name: Str(ip-192-168-53-115.ec2.internal)
     -> kube_app_name: Str(opentelemetry-collector)
     -> kube_app_instance: Str(opentelemetry-collector)
     -> k8s.namespace.name: Str(otel-staging)
     -> k8s.pod.start_time: Str(2023-11-20T12:53:23Z)
     -> k8s.pod.uid: Str(988d1bdc-5baf-4e98-942f-ab026a371daf)
ScopeMetrics #0
ScopeMetrics SchemaURL: 
InstrumentationScope otelcol/prometheusreceiver 0.88.0-dev
Metric #0
Descriptor:
     -> Name: otelcol_otelsvc_k8s_namespace_added
     -> Description: Number of namespace add events received
     -> Unit: 
     -> DataType: Sum
     -> IsMonotonic: true
     -> AggregationTemporality: Cumulative
NumberDataPoints #0
Data point attributes:
     -> service_instance_id: Str(d80d11f9-aa84-4e16-818d-3e7d868c0cfe)
     -> service_name: Str(otelcontribcol)
     -> service_version: Str(0.88.0-dev)
StartTimestamp: 1970-01-01 00:00:00 +0000 UTC
Timestamp: 2023-11-20 13:17:36.881 +0000 UTC
Value: 194151496.000000
Metric #9
Descriptor:
     -> Name: otelcol_receiver_accepted_spans
     -> Description: Number of spans successfully pushed into the pipeline.
     -> Unit: 
     -> DataType: Sum
     -> IsMonotonic: true
     -> AggregationTemporality: Cumulative
PREVIEWING: deforest/docs-11221-move-iac-to-code-security