Docs » Splunk Observability Cloud でサポートされているインテグレーション » Collectorコンポーネント: レシーバー » レシーバークリエーターレシーバー

レシーバークリエーターレシーバー 🔗

The receiver creator receiver allows the Splunk Distribution of the OpenTelemetry Collector to create new receivers at runtime based on configured rules and observer extensions. The supported pipeline types are metrics, traces, and logs. See パイプラインでデータを処理する for more information.

レシーバークリエーターのリスナーとして、以下のオブザーバー拡張機能のいずれかを使用できます:

  • docker_observer:Docker APIを通じて実行中のコンテナエンドポイントを検出し、レポートします。

  • ecs_task_observer:ECS タスクを実行するコンテナエンドポイントを検出し、レポートします。

  • host_observer: 現在のホストのリッスンしているネットワークエンドポイントを発見します。

  • k8s_observer: Kubernetes APIを通じてKubernetesのポッド、ポート、ノードのエンドポイントを検出し、レポートします。

このレシーバーは、kubeletstatshostmetrics レシーバーのように、アプリケーションやホスト用の他のレシーバーを使用できます。レシーバークリエーターの典型的なユースケースは、Kubernetes ポッドや Docker コンテナなど、動的にデプロイされるインフラストラクチャのメトリクスを収集することです。

はじめに 🔗

以下の手順に従って、コンポーネントの設定とアクティベーションを行ってください:

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

  2. 次のセクションで説明するように、レシーバークリエーターレシーバーを設定します。

  3. Collector を再起動します。

サンプル構成 🔗

レシーバークリエーターレシーバーを有効にするには、設定ファイルの extensions セクションに必要な拡張子を追加し、続いて receivers セクションに receiver_creator インスタンスを追加します。例:

extensions:
   # Configures the Kubernetes observer to watch for pod start and stop events.
   k8s_observer:
     auth_type: serviceAccount
     # Can be set to the node name to limit discovered endpoints
     # The value can be obtained using the downward API
     node: ${env:K8S_NODE_NAME}
     observe_pods: true
     observe_nodes: true

receivers:
  receiver_creator/k8skubeletstats:
    watch_observers: [k8s_observer]
    receivers:
      kubeletstats:
        # If this rule matches an instance of this receiver will be started.
        rule: type == "k8s.node"
        config:
          auth_type: serviceAccount
          collection_interval: 15s
          endpoint: '`endpoint`:`kubelet_endpoint_port`'
          extra_metadata_labels:
            - container.id
          metric_groups:
            - container
            - pod
            - node

service:
  extensions: [k8s_observer]
  pipelines:
    metrics:
      receivers: [receiver_creator/k8skubeletstats]

receiver_creator 設定の receivers セクション内で、サポートされているレシーバーをネストして設定することができます。どのレシーバーをネストできるかは、レシーバークリエーターが watch_observers で定義されている拡張機能を通じて監視しているインフラストラクチャの種類によって異なります。

ルール表現 🔗

新しいレシーバーはルールに基づいて動的に作成されます。各ルールは、1つのエンドポイントタイプにのみマッチするように、type == ("pod"|"port"|"hostport"|"container"|"k8s.node") && で始まらなければなりません。各エンドポイントタイプで利用可能な変数のリストについては、GitHub の Rules expressions を参照してください。

Dockerオブザーバーの例 🔗

以下の例では、Docker observerを使用してレシーバークリエーターを設定する方法を示しています:

extensions:
  docker_observer:
    # Default is unix:///var/run/docker.sock
    # Collector must have read access to the Docker Engine API
    endpoint: path/to/docker.sock
    excluded_images: ['redis', 'another_image_name']
    # Docker observer requires Docker API version 1.22 or higher
    api_version: 1.42
    # Time to wait for a response from Docker API. Default is 5 seconds
    timeout: 15s

receivers:
  receiver_creator:
    watch_observers: [docker_observer]
    receivers:
      nginx:
        rule: type == "container" and name matches "nginx" and port == 80
        config:
          endpoint: '`endpoint`/status'
          collection_interval: 10s

Kubernetesオブザーバーの例 🔗

次の例では、Kubernetesオブザーバーを使用してレシーバークリエイターを設定する方法を示しています:

extensions:
  k8s_observer:
    auth_type: serviceAccount
    # Can be set to the node name to limit discovered endpoints
    # The value can be obtained using the downward API
    node: ${env:K8S_NODE_NAME}
    observe_pods: true
    observe_nodes: true

receivers:
  receiver_creator:
    watch_observers: [k8s_observer]
    receivers:
      kubeletstats:
        rule: type == "k8s.node"
        config:
          auth_type: serviceAccount
          collection_interval: 10s
          endpoint: "`endpoint`:`kubelet_endpoint_port`"
          extra_metadata_labels:
            - container.id
          metric_groups:
            - container
            - pod
            - node

設定 🔗

次の表は、レシーバークリエーターレシーバーの設定オプションを示します:

トラブルシューティング 🔗

Splunk Observability Cloudをご利用のお客様で、Splunk Observability Cloudでデータを確認できない場合は、以下の方法でサポートを受けることができます。

Splunk Observability Cloudをご利用のお客様

見込み客および無料トライアルユーザー様

  • Splunk Answers のコミュニティサポートで質問し、回答を得る

  • Splunk #observability ユーザーグループの Slack チャンネルに参加して、世界中の顧客、パートナー、Splunk 社員とのコミュニケーションを図る。参加するには、Get Started with Splunk Community マニュアルの チャットグループ を参照してください。

This page was last updated on 2024年09月18日.