Axiom 是一个无服务器日志分析平台,帮助您存储、搜索和分析大量数据。将 Cloudflare Workers 应用程序遥测导出到 Axiom 后,您可以:
- 大规模存储和查询日志与追踪
- 创建仪表板和告警以监控 Workers
本指南将引导您从 Cloudflare Worker 应用程序导出符合 OpenTelemetry 标准的追踪和日志到 Axiom
开始之前,请确保您拥有:
- 有效的 Axiom 账户 ↗(提供免费套餐)
- 要监控的已部署 Worker
- 用于接收数据的 Axiom dataset
如果尚无用于接收数据的 dataset:
- 登录 Axiom 账户 ↗
- 在左侧边栏导航到 Datasets(数据集)
- 点击 New Dataset(新建数据集)
- 输入名称(例如
cloudflare-workers-otel) - 点击 Create Dataset(创建数据集)
- 在左侧边栏导航到 Settings(设置)
- 点击 API Tokens(API 令牌)
- 点击 Create API Token(创建 API 令牌)
- 配置 API 令牌:
- Name(名称):输入描述性名称(例如
cloudflare-workers-otel) - Permissions(权限):选择 Ingest(摄取) 权限(发送遥测数据所需)
- Datasets(数据集):选择此令牌可写入的 dataset,或选择 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(OTLP 端点):
https://api.axiom.co/v1/traces(或/v1/logs) - Custom Headers(自定义标头):添加两个必需的标头:
- 身份验证标头
- Header name:
Authorization - Header value:
Bearer <your-api-token>
- Header name:
- Dataset 标头:
- Header name:
X-Axiom-Dataset - Header value:您的 dataset 名称(例如
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 以使更改生效。