OTLP ヒストグラムのヒートマップとしての可視化

概要

OpenTelemetry Protocol (OTLP) は、OTLP ヒストグラムの送信をサポートしています。このメトリクスは、合計、カウント、最小、最大などの集計統計情報を提供することによって、一連の測定値に関する情報を圧縮するタイプです。OTLP ヒストグラムは、これらの測定値のうち、ユーザーが構成可能なバケットに該当するものがどれだけあるかをカウントします。

このページの手順を踏むことで、Datadog でこのデータタイプをヒートマップとして可視化することができます。

: 関連する OTLP Exponential Histogram タイプは、ディストリビューションに変換されるため、ヒートマップとして表示することも可能です。ディストリビューションについては、専用のディストリビューションのページをお読みください。

セットアップ

このガイドでは、すでに OpenTelemetry のメトリクスを Datadog に送信するための機能的なセットアップがあることを前提に説明します。

OpenTelemetry SDK の構成

OpenTelemetry SDK からメトリクスを生成する場合は、以下の手順で構成してください。

  1. デルタ一時性を持つ OTLP ヒストグラムを送信している SDK を構成します。これにより、ヒートマップウィジェットで最小値と最大値が利用可能になります。
  2. 集計からデフォルトのバケット境界をオーバーライドしたい場合にチェックします。: バケットを追加するごとに、別のカスタムメトリクスとみなされます。

他のソースからのメトリクスは、可能であれば、最小値と最大値のフィールドが設定されたデルタ OTLP ヒストグラムとして提供されていることを確認します。

Datadog Exporter または Datadog Agent の構成

Datadog Exporter または Datadog Agent で、ヒストグラムモードを設定し、集計メトリクスを有効にします。

Datadog Exporter の collector.yaml ファイルで、ヒストグラムモードを counters に構成し、send_aggregation_metrics フラグで集計メトリクスを有効にします。

exporters:
  datadog:
    metrics:
      histograms:
        mode: counters
        send_aggregation_metrics: true

: send_aggregation_metrics は Datadog Exporter v0.75.0 から利用可能です。それ以前のバージョンを使用している場合、代わりに send_count_sum_metrics フラグを使用してください。以前のバージョンでは、最小値と最大値が欠落しています。

otlp_config セクションで、ヒストグラムモードを counters に構成し、send_aggregation_metrics フラグで集計メトリクスを有効にします。

otlp_config:
  metrics:
    histograms:
      mode: counters
      send_aggregation_metrics: true

: send_aggregation_metrics は Datadog Agent v6.45.0/v7.45.0 から利用可能です。それ以前のバージョンを使用している場合、代わりに send_count_sum_metrics フラグを使用してください。以前のバージョンでは、最小値と最大値が欠落しています。

ヒートマップウィジェットの構成

ヒートマップウィジェットは、Datadog Exporter または Datadog Agent によって生成された <YOUR METRIC NAME>.bucket メトリクスのセットを使用し、それぞれが異なるヒストグラムバケットに対応しています。ヒストグラムをヒートマップとして可視化するには

  1. 可視化するメトリクスとして、<YOUR METRIC NAME>.bucket を選択します。
  2. メニューの distributions of から pre-binned data を選択します。

OTLP ヒストグラムをヒートマップウィジェットとして確認できるようになりました。

OpenMetrics の互換性

Datadog Agent OpenMetrics チェックは、あらかじめビン化されたデータヒートマップウィジェットオプションとも互換性があります。OpenTelemetry に変換せずに直接 OpenMetrics チェックにメトリクスを送信したい場合は、インスタンスで collect_histogram_buckets フラグと non_cumulative_histogram_buckets フラグを有効にすると、データが互換性を持った形で Datadog に送信されるようになります。

その他の参考資料