跳转到内容
搜索文档

导出到 Honeycomb

最后更新 查看 MarkdownAgent 设置

Honeycomb 是一个专为高基数数据构建的可观测性平台,帮助您理解和调试应用程序。将 Cloudflare Workers 应用程序遥测导出到 Honeycomb 后,您可以:

  • 可视化追踪以了解请求流程并识别性能瓶颈
  • 以无限维度查询和分析日志
  • 创建自定义查询和仪表板以监控 Workers
追踪视图,包含 POST 请求、fetch 操作、Durable Object 子请求和 queue send,时间轴上显示时序信息

本指南将引导您配置 Cloudflare Worker 应用程序,将符合 OpenTelemetry 标准的追踪和日志导出到 Honeycomb。

前提条件

开始之前,请确保您拥有:

步骤 1:获取 Honeycomb API 密钥

  1. 登录 Honeycomb 账户 ↗
  2. 点击右上角个人资料图标,导航到账户设置
  3. 选择 Team Settings(团队设置)
  4. 在左侧边栏中点击 Environments(环境),然后点击齿轮图标
  5. 找到您的环境(例如 production、test)或创建新环境
  6. 在 API Keys(API 密钥) 下,点击 Create Ingest API Key(创建摄取 API 密钥)
  7. 配置 API 密钥:
    • Name(名称):输入描述性名称(例如 cloudflare-workers-otel)
    • Permissions(权限):选择 Can create services/datasets(可创建服务/数据集)(OTLP 摄取所需)
  8. 点击 Create(创建)
  9. 重要:立即复制 API 密钥并安全存储——您将无法再次查看

API 密钥格式类似:hcaik_01hq...

步骤 2:配置 Cloudflare 目标

接下来,您将在 Cloudflare 仪表板中创建指向 Honeycomb 的目标。

Honeycomb OTLP 端点

Honeycomb 为追踪和日志提供单独的 OTLP 端点:

  • Traces(跟踪):https://api.honeycomb.io/v1/traces
  • Logs(日志):https://api.honeycomb.io/v1/logs

配置追踪目标

  1. 导航到 Cloudflare 账户的 Workers Observability ↗ 部分
  2. 点击 Add destination(添加目标)
  3. 配置追踪目标:
    • Destination Name(目标名称):honeycomb-traces(或任何描述性名称)
    • Destination Type(目标类型):选择 Traces(跟踪)
    • OTLP Endpoint(OTLP 端点):https://api.honeycomb.io/v1/traces
    • Custom Headers(自定义标头):添加身份验证标头:
      • Header name:x-honeycomb-team
      • Header value:您的 Honeycomb API 密钥(例如 hcaik_01hq...)
  4. 点击 Save(保存)

配置日志目标

对日志重复上述过程:

  1. 再次点击 Add destination(添加目标)
  2. 配置日志目标:
    • Destination Name(目标名称):honeycomb-logs(或任何描述性名称)
    • Destination Type(目标类型):选择 Logs(日志)
    • OTLP Endpoint(OTLP 端点):https://api.honeycomb.io/v1/logs
    • Custom Headers(自定义标头):添加身份验证标头:
      • Header name:x-honeycomb-team
      • Header value:您的 Honeycomb API 密钥(与上面相同)
  3. 点击 Save(保存)

步骤 3:配置 Worker

在 Cloudflare 仪表板中创建目标后,更新 Worker 配置以启用遥测导出。

{
  "observability": {
    "traces": {
      "enabled": true,
      // Must match the destination name in the dashboard
      "destinations": ["honeycomb-traces"]
    },
    "logs": {
      "enabled": true,
      // Must match the destination name in the dashboard
      "destinations": ["honeycomb-logs"]
    }
  }
}
[observability.traces]
enabled = true
destinations = [ "honeycomb-traces" ]

[observability.logs]
enabled = true
destinations = [ "honeycomb-logs" ]

更新配置后,部署 Worker 以使更改生效。

这篇文档对您有帮助吗?