Docs » Splunk Distribution of the OpenTelemetry Collector の利用開始 » Collector for Linux を使い始める » Tutorial: Configure the Splunk Distribution of OpenTelemetry Collector on a Linux host » パート2:Collectorの設定を編集して新しいコンポーネントを追加する

パート2:Collectorの設定を編集して新しいコンポーネントを追加する 🔗

新しいコンポーネント、機能、または設定を追加する必要がある場合は、Collectorの設定ファイルを編集します。たとえば、Splunk Distribution of OpenTelemetry Collectorには、メトリクスを収集し、CollectorがSplunk Observability Cloudにデータをエクスポートする準備を整えるためのCollectorコンポーネントが設定されています。

前のステップでは、Collectorをインストールし、Collectorの設定ファイルについて学びました。次の手順では、Collectorのデフォルトの設定にいくつかのコンポーネントを追加し、Collectorサービスを再起動してその変更を適用します。以下のコンポーネントを追加します:

  • Syslog receiver to collect logs over TCP.

  • レシーバーを使用して収集したデータをフィルターリングするためのフィルタープロセッサー。

See Tutorial: Configure the Splunk Distribution of OpenTelemetry Collector on a Linux host for an overview of the tutorial.

Locate the default configuration file 🔗

お好みのコードエディターまたはテキストエディターを使用して、/etc/otel/collectorのagent_config.yamlファイルを開きます。パート1でCollectorをホスト監視モードでデプロイしたので、これが編集する必要のある設定ファイルになります。

少し時間を取って、設定ファイルを読んでみましょう。Splunkディストリビューションに含まれるエージェント構成には、ホストメトリクスレシーバーやHECエクスポーターなど、いくつかの重要なコンポーネントがすでに含まれていることに注目してください。

Add the syslog receiver 🔗

次に、Syslogレシーバーを追加します。設定ファイルを開き、receivers セクションの中に syslog: を追加します:

receivers:
  syslog:

コンポーネントはデフォルト値を使うことが多いので、前の例のように空のエントリーを追加するだけで十分な場合もあります。syslogレシーバーの場合は、アドレスとプロトコルを定義する必要がある場合もあります:

receivers:
  syslog:
    tcp:
      listen_address: "0.0.0.0:54526"
    protocol: rfc5424

After you’ve added the Syslog receiver, make sure to add it to the receivers’s list under service.pipelines. In this case, the pipeline type is logs, since the Syslog receiver collects logs:

service:
  pipelines:
  #
  # Other pipelines
  #
    logs:
      # Add syslog at the end of the list
      receivers: [fluentforward, otlp, syslog]
      processors:
      - memory_limiter
      - batch
      - resourcedetection
      exporters: [splunk_hec, splunk_hec/profiling]

agent_config.yaml設定ファイルを保存し、次のステップに進みます。

Add the filter processor 🔗

これで、Collectorがsyslogログを受信するように設定できたので、次にフィルタープロセッサーを追加し、重大度レベル5(情報)のsyslogメッセージをすべて除外して、より重大度の高いログだけをエクスポートするようにします。

For example, suppose you want to filter the following log:

*Apr 29 03:02:42: %LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet0/0, changed state to down

agent_config.yamlファイルで、processors セクションを探して、フィルタープロセッサーを追加します。以下のスニペットは、重大度レベル5以下のすべてのメッセージを除外するようにログをフィルターリングしています:

processors:
  filter/severity_text:
    logs:
      exclude:
        match_type: regexp
          severity_texts:
          - -[5-7]-

このフィルタープロセッサーは、正規表現とOpenTelemetry変換言語(OTTL)を使用する複数のフィルター操作をサポートしています。初めてプロセッサーを設定する際は、時間をかけてドキュメントを読んでください。詳しくは、GitHub の OpenTelemetry Transformation Language (OTTL) を参照してください。

最後に、処理を必要とする同じログパイプラインにこのフィルタープロセッサーを追加します:

service:
  pipelines:
  #
  # Other pipelines
  #
    logs:
      # Add syslog at the end of the list
      receivers: [fluentforward, otlp, syslog]
      processors:
      - memory_limiter
      - batch
      - resourcedetection
      - filter/severity_text
      exporters: [splunk_hec, splunk_hec/profiling]

agent_config.yaml設定ファイルを保存し、次のステップに進みます。

Collector の再起動 🔗

ご利用のLinuxマシンで動作しているCollectorに設定を適用するには、Collectorサービスを再起動します:

sudo systemctl restart splunk-otel-collector

サービスを再起動することで、Collectorが新しい設定を読み取り、それに従って動作するようになります。

Next step 🔗

これでチュートリアルのパート2は完了です。Collectorの設定を編集して新しいコンポーネントを追加し、ホスト上のCollectorにその設定を適用しました。

しかし、うまくいかない場合もあります。Collectorの設定に関する一般的な問題のトラブルシューティング方法を学習する場合は、Part 3: Troubleshoot common Collector configuration issues に進んでください。

さらに詳しく 🔗

To learn more about the Collector installation and components, see the following resources:

このページは 2024年12月18日 に最終更新されました。