SuperAPI AI 工具集

observability

部署与运维

查看项目

更新于 10-16 02:41

技能介绍

Observability 是 browser-devtools-skills 提供的一项可观测性技能,用于监控和调试 Web 与 Node.js 应用,核心手段包括 OpenTelemetry、控制台日志、网络请求和分布式追踪。

用途 该技能在以下情况激活:用户询问分布式追踪;希望关联前端与后端请求;提到 OpenTelemetry、Jaeger、Zipkin 或 tracing;需要调试跨服务的请求流;或希望监控应用行为。

主要能力

  1. 分布式追踪:通过 browser-devtools-cli o11y 子命令获取 trace-id、生成新 trace-id、设置指定 trace-id。
  2. 控制台监控:读取控制台消息,可按类型(如 warning)或关键字(如 error)过滤,并支持 JSON 输出。
  3. 网络可观测性:获取 HTTP 请求,可按资源类型(如 fetch)或状态码范围(如最小 400)过滤。
  4. 性能指标:获取 Web Vitals,支持等待指定毫秒数以及包含调试信息。
  5. OpenTelemetry 集成:可注入和提取 W3C Trace Context 头,包括 traceparent(含 trace-id、span-id 和 trace flags)与 tracestate(厂商特定追踪信息)。
  6. 后端可观测性:配合 node-devtools-cli 连接 Node.js 进程,获取日志(可按 trace 搜索),并可在后端处理函数上设置 tracepoint 以捕获调用上下文。

使用方式 典型调试工作流:创建会话后生成新 trace-id,导航到目标页面并等待网络空闲,执行交互操作,再获取 trace-id 用于后端关联,检查控制台错误和网络请求,最后删除会话。也可使用已有 trace-id:先设置后端提供的 trace-id,再导航和交互,后续请求都会携带该 trace-id。

配置 通过环境变量控制 OpenTelemetry:OTEL_ENABLE(默认 false)、OTEL_SERVICE_NAME(默认 frontend)、OTEL_EXPORTER_TYPE(默认 none)、OTEL_EXPORTER_HTTP_URL、OTEL_EXPORTER_HTTP_HEADERS。导出器类型包括 none(禁用)、console(输出到控制台)、otlp/http(发送到 OTLP 收集器)。常见平台配置示例:Jaeger 使用 http://localhost:4318;Grafana Tempo 使用 http://tempo:4318;Honeycomb 使用 https://api.honeycomb.io 并设置 x-honeycomb-team 头;Datadog 使用 http://localhost:4318。

适用场景 分布式追踪、前后端请求关联、跨服务请求流调试、应用行为监控、控制台错误排查、网络请求分析和 Web Vitals 性能观测。

最佳实践 为每个测试场景生成新的 trace-id;在缺陷报告中记录 trace-id;优先检查控制台中的 JavaScript 错误;将网络请求过滤到相关端点;关联前后端时间戳;使用带追踪上下文的结构化日志;配置 OTEL 导出器以获得完整追踪视图。

限制 资料未提供该技能的具体收费、价格、平台支持范围或效果保证等信息。