Dockerコンテナ

Docker モニターには、この Splunk Observability Cloud インテグレーションを使用してください。メリット、インストール、設定、メトリクスを参照してください

Splunk Distribution of OpenTelemetry Collector は、docker-container-stats モニタータイプの Smart Agent レシーバーを使用して Docker API サーバーからコンテナ統計を読み取ります。現在、CPU 共有/クォータメトリクスはサポートされていないことに注意してください。

このインテグレーションはKubernetes、Linux、Windowsで利用できます。

メリット

インテグレーションを設定すると、これらの機能にアクセスできるようになります:

インストール

このインテグレーションを導入するには、以下の手順に従ってください:

  1. Splunk Distribution of the OpenTelemetry Collector をホストまたはコンテナプラットフォームにデプロイします:

  2. [設定] セクションの説明に従ってインテグレーションを設定します。

  3. Splunk Distribution of OpenTelemetry Collector を再起動します。

設定

Smart Agent モニターとCollector のインテグレーションを使用するには、以下の手順に従います:

  1. Smart Agent レシーバーを設定ファイルに含めます。

  2. レシーバーセクションおよびパイプラインセクションの両方で、Collector 構成にモニタータイプを追加します。

このインテグレーションをデフォルトの Docker デーモンドメインソケットで使用している場合、splunk-otel-collector ユーザーを docker グループに追加して Docker API へのアクセス権限を与える必要がある可能性があります。

usermod -aG docker splunk-otel-collector

Docker コンテナのログを Splunk Enterprise インスタンスに送信する方法の説明については、「チュートリアル:Collector を使用して、Splunk Enterprise にコンテナログを送信します」を参照してください。

このインテグレーションを有効にするには、Collector構成に以下を追加します:

receivers:
  smartagent/docker-container-stats:
    type: docker-container-stats
    ...  # Additional config

次に、設定ファイルの service.pipelines.metrics.receivers セクションにモニターを追加します:

service:
 pipelines:
   metrics:
     receivers: [smartagent/docker-container-stats]

コンフィギュレーション設定

次の表に、このインテグレーションの設定オプションを示します:

オプション

必須

タイプ

説明

enableExtraBlockIOMetrics

いいえ

bool

すべての追加ブロック IO メトリクスを送信します。デフォルト値は false

enableExtraCPUMetrics

いいえ

bool

すべての追加 CPU メトリクスを送信します。デフォルト値は false

enableExtraMemoryMetrics

いいえ

bool

すべての追加メモリメトリクスを送信します。デフォルト値は false

enableExtraNetworkMetrics

いいえ

bool

すべての追加ネットワークメトリクスを送信します。デフォルト値は false

dockerURL

いいえ

string

Docker サーバーの URL 。デフォルト値は、

unix:///var/run/docker.sockします。Windows の場合は、npipe:////.//pipe//docker_engine に設定してください。

timeoutSeconds

いいえ

integer

docker API リクエストの最大待機時間。値は、

デフォルト値は 5 です

cacheSyncInterval

いいえ

integer

docker イベントリスナーを通じてモニターが維持する

コンテナのリストを再同期するまでの待ち時間。たとえば cacheSyncInterval: "20m" です。デフォルト値は 60m です。

labelsToDimensions

いいえ

map of strings

コンテナラベル名とディメンション名のマッピング。値は、

対応するラベル値は、マッピングされた名前のディメンション値になります。たとえば、io.kubernetes.container.name: container_spec_name は、io.kubernetes.container.name コンテナラベルの値を持つ container_spec_name という名前のディメンションになります。

envToDimensions

いいえ

map of strings

コンテナ環境変数名からディメンション

名前。対応する環境変数の値が、出力されたメトリクスのディメンション値になります。たとえば、APP_VERSION: version は、version というディメンションを持つデータポイントになり、その値が、特定のコンテナ用に構成された APP_VERSION envvar の値(存在する場合)になります。

excludedImages

いいえ

list of strings

除外する画像のフィルタのリスト。リテラル、

グロブ、正規表現をサポートします、

メトリクス

このインテグレーションでは、以下のメトリクスを使用できます:

https://raw.githubusercontent.com/signalfx/splunk-otel-collector/main/internal/signalfx-agent/pkg/monitors/docker/metadata.yaml

備考

  • Splunk Observability Cloud で利用可能なメトリクスタイプの詳細は、「メトリクスタイプ」を参照してください。

  • ホストベースのサブスクリプションプランでは、デフォルトのメトリクスは、ホスト、コンテナ、バンドルメトリクスなど、Splunk Observability Cloud のホストベースのサブスクリプションに含まれるメトリクスです。カスタムメトリクスはデフォルトでは提供されていないため、料金が発生する場合があります。詳細については、「メトリクスカテゴリ」を参照してください。

  • MTSベースのサブスクリプションプランでは、すべてのメトリクスがカスタムです。

  • メトリクスを追加するには、「その他のメトリクスの追加」で extraMetrics の設定方法を参照してください。

トラブルシューティング

__ ___ ___ _ ______ _____________ _____ ________ ___ ___ ___ ____ __ ___ ____ ____ __ ______ _____________ ______ ___ ___ ___ ____ __ ___ _________ _____

_________ __ ______ _____________ _____ _________

_________ __ ___________ _________ ___ ____ _____ _____

  • ___ _ ________ ___ ___ _______ _______ _________ _______ __ ______ ________

  • ____ ___ ______ ______________ ____ _____ _____ _______ __ ___________ ____ __________ _________ ___ ______ _________ __________ __ _____ ___ ____ _______

プロトコルが利用できないエラー

Windowsホストでモニターを設定するときに次のエラーメッセージが表示された場合:

Error: Error initializing Docker client: protocol not available

コンフィギュレーションを編集し、unix:///var/run/docker.socknpipe:////.//pipe//docker_engine に置き換えます。