メインコンテンツへスキップ
メインコンテンツへスキップ

OpenTelemetry によるインジェスト

すべてのデータは OpenTelemetry (OTel) collector インスタンス経由で ClickStack に取り込まれます。このインスタンスは、ログ、メトリクス、トレース、およびセッションデータの主な入口として機能します。この用途には、collector の公式ディストリビューションである ClickStack distribution を使用することを推奨します。

ユーザーは、この collector に対して、language SDKs から、あるいはインフラストラクチャのメトリクスやログを収集するデータ収集エージェント経由でデータを送信します(agent ロールで動作する OTel collector や、FluentdVector などの他のテクノロジーなど)。管理された OpenTelemetry パイプラインを利用したいチーム向けに、Bindplaneは ClickStack をネイティブな宛先としてサポートする OpenTelemetry ネイティブなソリューションを提供し、テレメトリの収集・処理・ルーティングを簡素化します。

OpenTelemetry データの送信

ClickStack OpenTelemetry collector のインストール

Managed ClickStack にデータを送信するには、OTel collector を gateway ロール でデプロイする必要があります。OTel 互換のインストゥルメンテーションは、HTTP または gRPC 上の OTLP を通じてこの collector にイベントを送信します。

ClickStack OpenTelemetry collector の使用を推奨します

これにより、標準化されたインジェスト、スキーマの強制適用、そして ClickStack UI (HyperDX) との標準での互換性といったメリットを得られます。デフォルトのスキーマを使用することで、自動的なソース検出とあらかじめ設定されたカラムのマッピングが有効になります。

詳細については「Deploying the collector」を参照してください。

collector へのデータ送信

Managed ClickStack にデータを送信するには、OpenTelemetry collector が公開する次のエンドポイントを、OpenTelemetry インストゥルメンテーションの送信先として指定します。

  • HTTP (OTLP): http://localhost:4318
  • gRPC (OTLP): localhost:4317

OpenTelemetry をサポートする 言語 SDK やテレメトリライブラリでは、アプリケーション内で OTEL_EXPORTER_OTLP_ENDPOINT 環境変数を設定するだけで構成できます。

export OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4318

エージェントロールで OTel collector の contrib ディストリビューション をデプロイする場合、OTLP exporter を使用して ClickStack collector にデータを送信できます。以下に、この 構造化ログファイル を取り込むためのエージェント構成の例を示します。

# clickhouse-agent-config.yaml
receivers:
  filelog:
    include:
      - /opt/data/logs/access-structured.log
    start_at: beginning
    operators:
      - type: json_parser
        timestamp:
          parse_from: attributes.time_local
          layout: '%Y-%m-%d %H:%M:%S'
exporters:
  # HTTP setup
  otlphttp/hdx:
    endpoint: 'http://localhost:4318'
    compression: gzip
 
  # gRPC setup (alternative)
  otlp/hdx:
    endpoint: 'localhost:4317'
    compression: gzip
processors:
  batch:
    timeout: 5s
    send_batch_size: 1000
service:
  telemetry:
    metrics:
      address: 0.0.0.0:9888 # Modified as 2 collectors running on same host
  pipelines:
    logs:
      receivers: [filelog]
      processors: [batch]
      exporters: [otlphttp/hdx]