分布式追踪解码与瀑布图可视化

解析 Jaeger、Zipkin 或 OpenTelemetry 的 trace JSON,并以瀑布图展示 span 时序与异常节点

适合后端、SRE 和 DevOps 排查调用链性能问题,快速查看服务耗时、嵌套深度和错误热点。

示例结果

1 个示例

渲染结账链路瀑布图

解码 Jaeger 追踪并高亮慢支付 span 与异常节点

Trace waterfall renders span timing cards, service summaries, and error highlighting.
查看输入参数
{ "traceJson": "{\n \"data\": [\n {\n \"processes\": {\n \"p1\": {\n \"serviceName\": \"api-gateway\"\n },\n \"p2\": {\n \"serviceName\": \"payment-service\"\n }\n },\n \"spans\": [\n {\n \"traceID\": \"trace-1\",\n \"spanID\": \"1\",\n \"processID\": \"p1\",\n \"operationName\": \"POST /checkout\",\n \"startTime\": 1000000,\n \"duration\": 320000,\n \"references\": [],\n \"tags\": []\n },\n {\n \"traceID\": \"trace-1\",\n \"spanID\": \"2\",\n \"processID\": \"p2\",\n \"operationName\": \"charge-card\",\n \"startTime\": 1080000,\n \"duration\": 180000,\n \"references\": [\n {\n \"refType\": \"CHILD_OF\",\n \"spanID\": \"1\"\n }\n ],\n \"tags\": [\n {\n \"key\": \"error\",\n \"value\": true\n }\n ]\n }\n ]\n }\n ]\n}", "traceFormat": "jaeger", "displayUnit": "ms", "onlyErrors": false }

关键信息

分类
开发与 Web
输入类型
textarea, select, checkbox
输出类型
html
样本覆盖
4
支持 API
Yes

概览

一款专为后端开发者、SRE 和 DevOps 团队设计的分布式追踪解码与可视化工具。支持解析 Jaeger、Zipkin 和 OpenTelemetry 格式的 Trace JSON 数据,将其自动转换为直观的时序瀑布图,帮助您快速定位微服务架构中的调用链耗时瓶颈、嵌套深度及异常节点。

适用场景

  • 微服务架构下出现接口响应超时,需要排查具体是哪个底层服务导致延迟时。
  • 系统报警提示调用链中存在大量错误,需要快速过滤并定位异常 Span 节点时。
  • 分析和优化复杂业务链路(如电商结账、订单处理)的性能瓶颈与依赖关系时。

工作原理

  • 将导出的 Trace JSON 数据粘贴到输入框中。
  • 选择对应的追踪数据格式(支持 Jaeger、Zipkin、OpenTelemetry 或自动检测),并设置合适的时间显示单位(微秒、毫秒或秒)。
  • 勾选「仅显示异常 Span」可过滤掉正常节点,专注于错误排查。
  • 工具将解析 JSON 结构,渲染出包含服务摘要、耗时条和错误高亮的交互式瀑布图。

使用场景

排查 API 网关到多个下游微服务的请求延迟分布。
可视化展示数据库查询、缓存读取及第三方 API 调用的时序与并发情况。
在故障复盘时,通过仅查看异常 Span 快速还原错误发生时的调用上下文。

用户案例

1. 渲染电商结账链路瀑布图

后端开发工程师
背景原因
用户反馈结账接口响应缓慢,开发人员从 Jaeger 导出了该次请求的 Trace JSON。
解决问题
需要直观查看 API 网关、订单服务和支付服务之间的耗时分布,找出慢请求节点。
如何使用
将 Jaeger JSON 粘贴到 Trace JSON 输入框,格式选择 Jaeger JSON,时间单位选择 ms。
示例配置
Trace 格式: Jaeger JSON, 显示单位: ms, 仅显示异常 Span: 未勾选
效果
成功渲染出瀑布图,清晰展示支付服务(payment-service)耗时 180ms 且带有错误标记,帮助开发者迅速锁定支付网关超时问题。

2. 快速定位微服务调用链中的异常节点

SRE 工程师
背景原因
某个核心业务链路包含上百个 Span,排查日志时发现存在偶发性 500 错误。
解决问题
在庞大的调用链中手动寻找带有 error 标签的 Span 极其耗时。
如何使用
粘贴 OpenTelemetry 导出的 JSON 数据,勾选“仅显示异常 Span”选项。
示例配置
Trace 格式: OpenTelemetry JSON, 仅显示异常 Span: 已勾选
效果
瀑布图自动隐藏了所有状态正常的 Span,仅高亮展示抛出异常的数据库查询节点,大幅缩短了故障排查时间。

用 Samples 测试

json

相关专题

常见问题

支持哪些分布式追踪系统的 JSON 格式?

目前支持 Jaeger、Zipkin 和 OpenTelemetry 导出的标准 JSON 格式,您也可以选择“自动检测”让工具自行识别。

数据处理是在本地进行还是会上传到服务器?

所有 Trace JSON 数据的解析和瀑布图渲染均在您的浏览器本地完成,不会上传任何敏感的调用链数据。

如何快速找到调用链中的报错节点?

您可以在配置中勾选“仅显示异常 Span”选项,瀑布图将自动过滤掉正常的调用节点,只展示带有错误标记的 Span。

瀑布图的时间单位可以调整吗?

可以。工具支持将时间显示单位切换为微秒(us)、毫秒(ms)或秒(s),以适应不同耗时级别的链路分析。

为什么粘贴 JSON 后没有渲染出瀑布图?

请检查粘贴的 JSON 格式是否完整且合法,并确认其属于受支持的 Jaeger、Zipkin 或 OpenTelemetry 格式。

API 文档

请求端点

POST /zh/api/tools/distributed-trace-decoder-waterfall-visualizer

请求参数

参数名 类型 必填 描述
traceJson textarea -
traceFormat select -
displayUnit select -
onlyErrors checkbox -

响应格式

{
  "result": "
Processed HTML content
", "error": "Error message (optional)", "message": "Notification message (optional)", "metadata": { "key": "value" } }
HTML: HTML

AI MCP 文档

将此工具添加到您的 MCP 服务器配置中:

{
  "mcpServers": {
    "elysiatools-distributed-trace-decoder-waterfall-visualizer": {
      "name": "distributed-trace-decoder-waterfall-visualizer",
      "description": "解析 Jaeger、Zipkin 或 OpenTelemetry 的 trace JSON,并以瀑布图展示 span 时序与异常节点",
      "baseUrl": "https://elysiatools.com/mcp/sse?toolId=distributed-trace-decoder-waterfall-visualizer",
      "command": "",
      "args": [],
      "env": {},
      "isActive": true,
      "type": "sse"
    }
  }
}

你可以串联多个工具,比如:`https://elysiatools.com/mcp/sse?toolId=png-to-webp,jpg-to-webp,gif-to-webp`,最多20个。

如果遇见问题,请联系我们:[email protected]