Axiom は、大量のデータを保存・検索・分析できるサーバーレスのログ分析プラットフォームです。Cloudflare Workers アプリケーションのテレメトリを Axiom にエクスポートすると、次のことができます。
- ログとトレースを大規模に保存し、クエリする
- ダッシュボードとアラートを作成して Workers を監視する
このガイドでは、Cloudflare Worker アプリケーションから OpenTelemetry 準拠のトレースとログを Axiom にエクスポートする手順を説明します。
始める前に、次を用意してください。
- 有効な Axiom アカウント ↗(無料プランあり)
- 監視したいデプロイ済みの Worker
- データを送信する Axiom のデータセット
データを送信するデータセットがまだない場合は、次の手順で作成します。
- Axiom アカウント ↗ にログインします
- 左サイドバーの Datasets を開きます
- New Dataset をクリックします
- 名前を入力します(例:
cloudflare-workers-otel) - Create Dataset をクリックします
- 左サイドバーの Settings を開きます
- API Tokens をクリックします
- Create API Token をクリックします
- API トークンを設定します。
- Name: わかりやすい名前を入力します(例:
cloudflare-workers-otel) - Permissions: Ingest 権限を選びます(テレメトリデータの送信に必要です)
- Datasets: このトークンが書き込めるデータセットを選ぶか、All Datasets を選びます
- Name: わかりやすい名前を入力します(例:
- Create をクリックします
- 重要: API トークンはすぐにコピーして安全に保管してください。再表示できません
API トークンは次のような形式です。xaat-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Cloudflare ダッシュボードで、Axiom を指す送信先を作成します。
Axiom はトレース用とログ用に別々の OTLP エンドポイントを提供します。
- Traces:
https://api.axiom.co/v1/traces - Logs:
https://api.axiom.co/v1/logs
- Cloudflare アカウントの Workers Observability ↗ を開きます
- Add destination をクリックします
- トレースの送信先を設定します。
- Destination Name:
axiom-traces(またはわかりやすい名前) - Destination Type: Traces を選びます
- OTLP Endpoint:
https://api.axiom.co/v1/traces(または/v1/logs) - Custom Headers: 次の 2 つの必須ヘッダーを追加します。
- 認証ヘッダー
- Header name:
Authorization - Header value:
Bearer <your-api-token>
- Header name:
- Dataset ヘッダー:
- Header name:
X-Axiom-Dataset - Header value: データセット名(例:
cloudflare-workers-otel)
- Header name:
- 認証ヘッダー
- Destination Name:
- Save をクリックします
Cloudflare ダッシュボードで送信先を作成したら、Worker の設定を更新してテレメトリのエクスポートを有効にします。
{
"observability": {
"traces": {
"enabled": true,
// Must match the destination name in the dashboard
"destinations": ["axiom-traces"]
},
"logs": {
"enabled": true,
// Must match the destination name in the dashboard
"destinations": ["axiom-logs"]
}
}
}[observability.traces]
enabled = true
destinations = [ "axiom-traces" ]
[observability.logs]
enabled = true
destinations = [ "axiom-logs" ]設定を更新したら、変更を反映するために Worker をデプロイします。