跳转到内容
搜索文档

导出到 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. 找到您的环境(例如 productiontest)或创建新环境
  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 以使更改生效。

这篇文档对您有帮助吗?