1. Agent 設定の確認

15 minutes  

ようこそ!このセクションでは、AgentGateway の両方を含む完全に機能する OpenTelemetry セットアップから始めます。

まず、設定ファイルを簡単に確認して、全体的な構造に慣れ、テレメトリーパイプラインを制御する重要なセクションを確認します。

Tip

ワークショップを通じて、複数のターミナルウィンドウを使用します。整理しやすくするために、各ターミナルに固有の名前または色を付けてください。これにより、演習中にターミナルを簡単に識別して切り替えることができます。

これらのターミナルを AgentGatewayLoadgenTest と呼びます。

Exercise
  1. 最初のターミナルウィンドウを作成し、Agent と名前を付けます。最初の演習用ディレクトリ [WORKSHOP]/1-agent-gateway に移動し、必要なファイルが生成されていることを確認します

    cd 1-agent-gateway
    ls -l
  2. ディレクトリに以下のファイルが表示されるはずです。表示されない場合は、前提条件 セクションで説明されている setup-workshop.sh スクリプトを再実行してください

    .
    ├── agent.yaml
    └── gateway.yaml

Agent 設定の理解

このワークショップで使用する agent.yaml ファイルの主要なコンポーネントを確認しましょう。メトリクス、トレース、ログをサポートするために重要な追加が行われています。

Receiver

receivers セクションは、Agent がテレメトリーデータを取り込む方法を定義します。このセットアップでは、3種類の Receiver が設定されています

  • Host Metrics Receiver

    hostmetrics:                         # Host Metrics Receiver
      collection_interval: 3600s         # Collection Interval (1hr)
      scrapers:
        cpu:                             # CPU Scraper

    ローカルシステムから1時間ごとに CPU 使用率を収集します。これを使用してサンプルメトリクスデータを生成します。

  • OTLP Receiver(HTTP プロトコル)

    otlp:                                # OTLP Receiver
      protocols:
        http:                            # Configure HTTP protocol
          endpoint: "0.0.0.0:4318"       # Endpoint to bind to

    Agent がポート 4318 で HTTP 経由でメトリクス、トレース、ログを受信できるようにします。これは、今後の演習で Collector にデータを送信するために使用されます。

  • FileLog Receiver

    filelog/quotes:                      # Receiver Type/Name
      include: ./quotes.log              # The file to read log data from
      include_file_path: true            # Include file path in the log data
      include_file_name: false           # Exclude file name from the log data
      resource:                          # Add custom resource attributes
        com.splunk.source: ./quotes.log  # Source of the log data
        com.splunk.sourcetype: quotes    # Source type of the log data

    Agent がローカルログファイル(quotes.log)を tail し、sourcesourceType などのメタデータで強化された構造化ログイベントに変換できるようにします。

Exporter

  • Debug Exporter

      debug:                               # Exporter Type
        verbosity: detailed                # Enabled detailed debug output
  • OTLPHTTP Exporter

      otlphttp:                            # Exporter Type
        endpoint: "http://localhost:5318"  # Gateway OTLP endpoint

    debug Exporter はワークショップ中の可視性とデバッグのためにデータをコンソールに送信し、otlphttp Exporter はすべてのテレメトリーをローカルの Gateway インスタンスに転送します。

    このデュアルエクスポート戦略により、生データをローカルで確認しながら、さらなる処理とエクスポートのためにダウンストリームに送信することができます。