1.2. OpenTelemetry Collector 設定オプション
OpenTelemetry Collector は、テレメトリーデータにアクセスする 5 種類のコンポーネントで構成されます。
- レシーバー
- プロセッサー
- エクスポーター
- コネクター
- 拡張機能
カスタムリソース YAML ファイルで、コンポーネントのインスタンスを複数定義できます。コンポーネントは、設定した後に YAML ファイルの spec.config.service セクションで定義されたパイプラインで有効にする必要があります。ベストプラクティスとしては、必要なコンポーネントのみを有効にします。
OpenTelemetry Collector カスタムリソースファイルの例
apiVersion: opentelemetry.io/v1beta1
kind: OpenTelemetryCollector
metadata:
name: cluster-collector
namespace: tracing-system
spec:
mode: deployment
observability:
metrics:
enableMetrics: true
config:
receivers:
otlp:
protocols:
grpc: {}
http: {}
processors: {}
exporters:
otlp:
endpoint: otel-collector-headless.tracing-system.svc:4317
tls:
ca_file: "/var/run/secrets/kubernetes.io/serviceaccount/service-ca.crt"
prometheus:
endpoint: 0.0.0.0:8889
resource_to_telemetry_conversion:
enabled: true # by default resource attributes are dropped
service:
pipelines:
traces:
receivers: [otlp]
processors: []
exporters: [otlp]
metrics:
receivers: [otlp]
processors: []
exporters: [prometheus]
- 1
- コンポーネントが設定されていても、
serviceセクションで定義されていない場合、そのコンポーネントは有効になりません。
| パラメーター | 説明 | 値 | デフォルト |
|---|---|---|---|
| レシーバーは、データが Collector に到達する方法です。デフォルトでは、レシーバーは設定されていません。設定が有効とみなされるためには、少なくとも 1 つの有効なレシーバーが必要です。レシーバーは、パイプラインに追加して有効にされます。 |
| なし |
| プロセッサーは、受信したデータをエクスポートする前に処理します。デフォルトでは、プロセッサーは有効になっていません。 |
| なし |
| エクスポーターは、1 つ以上のバックエンドまたは宛先にデータを送信します。デフォルトでは、エクスポーターは設定されていません。設定が有効とみなされるためには、少なくとも 1 つの有効なエクスポーターが必要です。エクスポーターは、パイプラインに追加して有効にされます。エクスポーターはデフォルト設定で使用できますが、多くの場合、少なくとも宛先およびセキュリティー設定を指定するための設定が必要です。 |
| なし |
| コネクターはパイプラインのペアを結合します。つまり、パイプラインの終わりのエクスポーターとしてデータを消費し、パイプラインの始まりのレシーバーとしてデータを出力します。コネクターを使用して、消費されたデータを要約、複製、またはルーティングできます。 |
| なし |
| テレメトリーデータの処理を含まないタスク用のオプションのコンポーネント。 |
| None |
|
コンポーネントは、それらを | ||
|
レシーバーは、それらを | なし | |
|
プロセッサーは、それらを | なし | |
|
エクスポーターは、それらを | なし | |
|
メトリクスのレシーバーを有効にするには、 | なし | |
|
メトリクスのプロセッサーを有効にするには、 | なし | |
|
メトリクスのエクスポーターを有効にするには、 | None |