OpenTelemetry Collector は、テレメトリデータを受信、処理、エクスポートするためのベンダーに依存しないツールです。 オブザーバビリティ パイプラインで コレクター を実行することをお勧めします。 コレクターの要件と設定はさまざまですが、 APM OpenTelemetryデータをコレクター経由でルーティングするのが一般的です。 これにより、オーバーヘッドがアプリケーションから移動され、追加の環境コンテキスト データ、フィルター、変換などでテレメトリを充実させる場所が提供されます。 インフラストラクチャのモニタリングに コレクター を使用することも一般的ですが、このドキュメントではデータ処理のユースケースに焦点を当てています。 詳細については、インフラストラクチャモニタリング用コレクターを参照してください。
以下はゲートウェイとしてのコレクターの例ですが、アプリケーションと同じホスト上で実行されるエージェントとしてコレクターを設定することもできます。
![Diagram of OTLP with collector Diagram showing OpenTelemetry using the OpenTelemetry collector and New Relic's OTLP endpoint.](/images/opentelemetry_diagram_native-otlp-with-collector.webp)
コレクターには、レシーバー、プロセッサ、エクスポーター、拡張機能、およびコネクタの広範なセットがあります。 これらのコンポーネントは、事前に構築されたディストリビューションにバンドルされています。 ただし、特定の要件に合わせてカスタム コンポーネントを構築したり、特定のコンポーネント セットをパッケージ化するカスタム コレクター ディストリビューションを構築したりすることも可能です。
設定は要件によって異なりますが、 New Relicにデータを送信するコレクターには、いくつかの共通点があります。
OTLPエクスポーター
OpenTelemetryコレクターは、 otlphttpexporterを使用したデータのエクスポートをサポートしています。 エクスポーターの設定がNew Relic OTLP の要件と一致していることを確認します。
注意:otlpexporterはサポートされていますが、OTLP/gRPC よりも OTLP/HTTP バイナリ プロトコルが優先されます。
バッチプロセッサ
バッチ プロセッサを使用してレコードをバッチでエクスポートするようにコレクターを構成します。 バッチ サイズと頻度がNew Relic OTLP 要件に一致するように設定されていることを確認します。
最小限の例
コレクターをインストールするには、 OpenTelemetry のドキュメントを参照してください。
以下の設定でコレクターを実行し、次の内容を必ず置き換えてください。
<INSERT_NEW_RELIC_OTLP_ENDPOINT>
を適切なNew Relic OTLP オペレーターに置き換えてください<INSERT_NEW_RELIC_LICENSE_KEY>
ライセンスキーに置き換えます
receivers: otlp: protocols: grpc: http:
processors: batch:
exporters: otlphttp: endpoint: <INSERT_NEW_RELIC_OTLP_ENDPOINT> headers: api-key: <INSERT_NEW_RELIC_LICENSE_KEY>
service: pipelines: traces: receivers: [otlp] processors: [batch] exporters: [otlphttp] metrics: receivers: [otlp] processors: [batch] exporters: [otlphttp] logs: receivers: [otlp] processors: [batch] exporters: [otlphttp]
実際の例については、 New Relic OpenTelemetry サンプル リポジトリを参照してください。
その他の コレクター の例については、 インフラストラクチャのモニタリング用のコレクターを参照してください。