Skip to main content
On this page

可观测性

Deno Deploy 提供全面的可观测性功能,帮助您了解应用性能、调试错误和监控使用情况。这些功能利用了 OpenTelemetry 以及 Deno 内置的 OpenTelemetry 集成

Deno Deploy 中的三大主要可观测性功能是:

  • 日志:应用代码发出的非结构化调试信息
  • 跟踪:关于请求处理的结构化信息,包括每个步骤的执行时间及自动捕获的出站 I/O 操作
  • 指标:关于应用性能和使用情况的结构化高层数据,例如请求数、错误数和延迟

日志 Jump to heading

Deno Deploy 中的日志通过标准的 console API 捕获,并可以在控制面板的日志页面中查询。

日志按应用组织。您可以使用搜索栏根据各种属性和消息内容过滤日志。

当日志在跟踪上下文中发出时,它们会与特定的跟踪和跨度关联。对于这类日志,日志界面会显示“查看跟踪”按钮,允许您在覆盖抽屉中打开相关跟踪,进行详细检查。

跟踪 Jump to heading

Deno Deploy 中的跟踪通过三种方式捕获:

  • 内置操作自动跟踪:入站 HTTP 请求、出站 fetch 调用及其他系统操作会自动跟踪,且无法禁用。
  • 支持框架自动跟踪:如 Next.js、Fresh 和 Astro 等框架内置了自动监控。具体支持的框架和操作可能随时间变化。
  • 手动自定义监控:您的应用代码可以通过 OpenTelemetry API 创建新的跟踪或跨度。

跟踪按应用组织。搜索栏可让您根据各种属性和跨度名称过滤。

点击某个跟踪会打开跟踪覆盖抽屉,显示该跟踪中的所有跨度的瀑布视图。该视图展示每个跨度的开始时间、结束时间和持续时间,并按父跨度分组,根跨度位于最上方。

点击任一跨度,会在抽屉底部展示其详细信息,包括所有捕获的属性。例如,出站 HTTP 请求包含方法、URL 和状态码。

跨度详情部分还包括 “日志” 标签页,显示在该跨度上下文中发出的所有日志。

您可点击任意跟踪上的“查看日志”,在日志页打开该跟踪 ID 预填的搜索栏,显示与该跟踪相关的所有日志。

指标 Jump to heading

Deno Deploy 中的指标自动捕获多种操作数据,如入站 HTTP 请求和出站 fetch 调用,且无法禁用。

指标按应用组织,并以时间序列图的形式展示其随时间变化的数值。您可通过搜索栏按各种属性过滤指标。

过滤 Jump to heading

日志、跟踪和指标可使用以下通用属性进行过滤:

  • 版本:发出数据的应用版本 ID
  • 上下文:数据发出的上下文(“生产”或“开发”)

对日志和跟踪,额外提供以下过滤器:

  • 跟踪:包含该日志或跨度的跟踪 ID

仅对跟踪提供以下额外过滤器:

  • HTTP 方法:触发跟踪的请求的 HTTP 方法
  • HTTP 路径:触发跟踪的请求路径
  • HTTP 状态:响应的 HTTP 状态码

时间范围过滤 Jump to heading

默认情况下,可观测性页面显示过去一小时的数据。您可以通过页面右上角的时间范围过滤器更改此设置。

您可以选择预定义的时间范围,如“最近 1 小时”、“最近 24 小时”或“最近 7 天”,也可以点击“自定义”按钮设置自定义时间范围。

自定义时间范围可以是绝对时间段(具体的开始和结束时间),也可以是相对时间段(例如 3 天前、1 小时后等)。相对时间段使用与 Grafana 相同的语法:

  • now - 当前时间
  • now-1h - 1 小时前
  • now/h - 当前小时的开始时间
  • now-1h/h - 前一个小时的开始时间
  • now/d+3h - 当天开始时间加 3 小时
  • now-1d/d - 前一天的开始时间

你找到了你需要的东西吗?

编辑此页面
隐私政策