6.3. File Storage Extension
File Storage Extension は、トレース、メトリクス、およびログをサポートします。このエクステンションは、状態をローカルファイルシステムに保持できます。この拡張機能は、HTTP プロトコルおよび gRPC プロトコルに基づく OpenTelemetry Protocol (OTLP) エクスポーターの送信キューを保持します。このエクステンションには、ディレクトリーへの読み取りおよび書き込みアクセスが必要です。このエクステンションはデフォルトのディレクトリーを使用できますが、デフォルトのディレクトリーがすでに存在している必要があります。
File Storage Extension はテクノロジープレビューのみの機能です。テクノロジープレビュー機能は、Red Hat 製品のサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではないことがあります。Red Hat は、実稼働環境でこれらを使用することを推奨していません。テクノロジープレビュー機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行い、フィードバックを提供していただくことを目的としています。
Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。
OTLP 送信キューを保持する File Storage Extension が設定された OpenTelemetry Collector カスタムリソース
# ...
config:
extensions:
file_storage/all_settings:
directory: /var/lib/otelcol/mydir
timeout: 1s
compaction:
on_start: true
directory: /tmp/
max_transaction_size: 65_536
fsync: false
exporters:
otlp:
sending_queue:
storage: file_storage/all_settings
service:
extensions: [file_storage/all_settings]
pipelines:
traces:
receivers: [otlp]
exporters: [otlp]
# ...
- 1
- テレメトリーデータを保存するディレクトリーを指定します。
- 2
- 保存されたファイルを開く際のタイムアウト期間を指定します。
- 3
- Collector が起動すると圧縮を開始します。省略した場合、デフォルトは
falseです。 - 4
- コンパクターがテレメトリーデータを保存するディレクトリーを指定します。
- 5
- 圧縮トランザクションの最大サイズを定義します。トランザクションサイズを無視するには、ゼロに設定します。省略した場合、デフォルトは
65536バイトです。 - 6
- 設定すると、各書き込み操作の後にデータベースよる
fsync呼び出しが強制的に実行されます。これにより、データベースプロセスが中断された場合にデータベースの整合性を確保できますが、パフォーマンスが低下します。 - 7
- OTLP エクスポーターデータをローカルファイルシステムにバッファーリングします。
- 8
- Collector による File Storage Extension を起動します。