$ telemetry
Boost トレースをオブザーバビリティプラットフォームへ送信
EXTERNAL_OTEL_ENDPOINT と EXTERNAL_OTEL_HEADERS または EXTERNAL_OTEL_TOKEN を設定します。Boost が外部送信先を選ぶ方法
EXTERNAL_OTEL_ENDPOINTで追加の顧客所有 OTLP 送信先を有効化します。EXTERNAL_OTEL_HEADERSはカンマ区切りのkey=valueヘッダーを送り、トークンヘルパーより優先されます。EXTERNAL_OTEL_TOKENはAuthorization=Bearer <token>のショートカットです。- OTLP/gRPC は
host:port、OTLP/HTTP はhttp://host/https://hostを使います。
クイックセットアップ
使うプラットフォームを選び、プレースホルダーを置き換え、Boost を実行するシェル・CI ジョブ・エージェント環境で変数を export します。
# generic OTLP/gRPC collector
export EXTERNAL_OTEL_ENDPOINT=otel-collector.example.com:4317
export EXTERNAL_OTEL_HEADERS='Authorization=Bearer <collector-token>'
# local OTLP/HTTP collector
export EXTERNAL_OTEL_ENDPOINT=http://localhost:4318
プラットフォーム例
Coralogix
Send-Your-Data API キーで Coralogix OTLP gRPC ingress へ送信します。
- トークン種別
- Coralogix Send-Your-Data API key
- エンドポイント
- ingress.
:443
export EXTERNAL_OTEL_ENDPOINT=ingress.<coralogix-domain>:443
export EXTERNAL_OTEL_HEADERS='Authorization=Bearer <CORALOGIX_SEND_YOUR_DATA_API_KEY>'Datadog
最も一般的な OTLP 構成ではローカル Datadog Agent を使うか、アカウントで有効なら直接 OTLP ingest を使います。
- トークン種別
- Datadog API key for direct ingest; no app header for local Agent
- エンドポイント
- http://localhost:4318
# local Datadog Agent
export EXTERNAL_OTEL_ENDPOINT=http://localhost:4318
# direct OTLP traces ingest
export EXTERNAL_OTEL_ENDPOINT=<DATADOG_PROVIDED_OTLP_TRACES_HTTPS_ENDPOINT>
export EXTERNAL_OTEL_HEADERS='dd-api-key=<DD_API_KEY>,dd-otlp-source=<DATADOG_ASSIGNED_SOURCE>'直接 OTLP ingest はアカウント有効化が必要で HTTP/protobuf ベースです。多くのチームはローカル Agent を使います。
Elastic Cloud / Elastic APM
Elastic Cloud 管理 OTLP または Elastic APM Server へ OTLP トレースを送信します。
- トークン種別
- Elastic encoded API key, Elastic APM API key, or Elastic APM secret token
- エンドポイント
- https://
export EXTERNAL_OTEL_ENDPOINT=https://<elastic-otlp-or-apm-endpoint>
export EXTERNAL_OTEL_HEADERS='Authorization=ApiKey <ELASTIC_ENCODED_API_KEY>'APM Server の secret token は Authorization=Bearer
Grafana Cloud
Grafana Cloud OpenTelemetry 接続タイルの OTLP エンドポイントと Basic 認証トークンを使います。
- トークン種別
- Grafana Cloud instance ID plus API token encoded as Basic auth
- エンドポイント
- otlp-gateway-
.grafana.net:443
export EXTERNAL_OTEL_ENDPOINT=otlp-gateway-<region>.grafana.net:443
export EXTERNAL_OTEL_HEADERS='Authorization=Basic <BASE64_INSTANCE_ID_COLON_TOKEN>'Grafana Cloud は OTLP/HTTP エンドポイントも表示します。Boost では gRPC host:443 が最も移植しやすい例です。
Honeycomb
Honeycomb API キーで OTLP トレースを Honeycomb に直接送信します。
- トークン種別
- Honeycomb API key
- エンドポイント
- api.honeycomb.io:443
export EXTERNAL_OTEL_ENDPOINT=api.honeycomb.io:443
export EXTERNAL_OTEL_HEADERS='x-honeycomb-team=<HONEYCOMB_API_KEY>'EU は api.eu1.honeycomb.io:443。Honeycomb Classic ユーザーは x-honeycomb-dataset=
New Relic
New Relic ライセンスキーで OTLP トレースを New Relic に直接送信します。
- トークン種別
- New Relic license key
- エンドポイント
- otlp.nr-data.net:443
export EXTERNAL_OTEL_ENDPOINT=otlp.nr-data.net:443
export EXTERNAL_OTEL_HEADERS='api-key=<NEW_RELIC_LICENSE_KEY>'EU は otlp.eu01.nr-data.net:443。FedRAMP は gov-otlp.nr-data.net:443。
変数の設定場所
ローカルエージェント
エディタやエージェントが継承するシェル環境で変数を export します。シェル起動ファイルを変更したらエディタを再起動してください。
GitHub Actions
トークンは GitHub Actions の secrets に保存し、Boost を実行するジョブ環境へマップします。ワークフローに本物のトークンをコミットしないでください。
env:
EXTERNAL_OTEL_ENDPOINT: otlp.nr-data.net:443
EXTERNAL_OTEL_HEADERS: api-key=${{ secrets.NEW_RELIC_LICENSE_KEY }}
セキュリティ上の注意
- 可能な限り狭い ingest 権限のプロバイダートークンを使ってください。
- プロバイダーが
Authorization以外のヘッダー名を要求する場合はEXTERNAL_OTEL_HEADERSを優先してください。 - Boost はエクスポート前にスパンをサニタイズし、Boost エンドポイントと外部エンドポイントへ配信します。
- デフォルトの Boost テレメトリ先以外へミラーしたい場合以外は
EXTERNAL_OTEL_ENDPOINTを設定しないでください。