不喜欢广告? 无广告 今天

堆栈跟踪格式化与解析器

数据开发人员文本
广告 移除?

清理后的堆栈(Markdown)

广告 移除?

指导

堆栈追踪格式化器与解析器

堆栈跟踪格式化与解析器

粘贴来自JavaScript、Python、Java、Ruby、Go、.NET或PHP的原始堆栈追踪,立即获得颜色编码、逐帧解析的分析结果。该工具可自动检测语言,将您的代码与框架噪音分离,并生成一个干净的Markdown块,可直接用于错误报告或拉取请求。

如何使用

  1. 将原始堆栈追踪粘贴到输入区域,或点击任一语言示例以查看格式化器的实际效果。
  2. 保持语言选项开启 自动检测,或如果格式异常或被截断,则手动选择一个。
  3. 切换 折叠框架/供应商帧 用于将长段库代码折叠为单个可展开块。
  4. 使用 高亮用户代码帧 用于使您的文件从追踪的其余部分中突出显示。
  5. 点击Markdown输出旁边的复制按钮,将干净的代码块粘贴到GitHub、Slack或Jira中。

特征

  • 支持七种语言 – JavaScript / TypeScript、Python、Java / Kotlin、Ruby、Go、.NET(C#)和PHP。
  • 自动语言检测 – 解析器会检查您追踪中的特征模式,并选择正确的语法,因此您通常无需手动设置。
  • 供应商帧折叠 – 长段node_modules、site-packages、Spring、gems或System.*帧可折叠为单次点击展开的行。
  • 用户代码高亮 – 您自己的文件将以温暖的强调色显示,使相关行不再被噪音淹没。
  • 异常摘要 – 异常类型和消息被提取到带有总帧数、用户帧数和供应商帧数徽章的标题中。
  • 原因链 – Java中的嵌套原因和Python中的链式追踪被分别渲染为独立部分。
  • Markdown导出 – 生成一个带边框的代码块,可直接粘贴到错误报告、拉取请求或聊天工具中。
  • 完全客户端 – 任何内容都不会离开您的浏览器;可安全用于生产系统的内部堆栈追踪。

常见用例

  • 处理生产事故 – 粘贴长追踪后,立即能识别出哪个您自己的文件位于调用链的顶端。
  • 编写更好的错误报告 – 导出一个Markdown格式的追踪,可在GitHub、GitLab和Jira中清晰渲染。
  • 审查同事的错误日志 – 折叠第三方帧,使对话能集中于您实际拥有的代码。
  • 教授调试技巧 – 使用用户/供应商颜色标注,向新入职的开发者展示如何从底部向上阅读追踪。

常问问题

  1. 为什么从底部向上读取堆栈追踪?

    在大多数语言中,函数调用时栈向下增长,运行时会将最近的调用打印在顶部。从底部向上阅读可获得时间顺序:首先是入口点,然后是每次递归调用,最后是失败的行。查看底部也是在Java中“由……引起”语句和Python中链式追踪所在的位置,这些通常包含真正的根本原因。

  2. 堆栈追踪和崩溃转储有什么区别?

    堆栈追踪是异常发生时活跃的函数调用列表。崩溃转储是内存、寄存器和线程在致命故障时刻的二进制快照,通常由操作系统或运行时生成。堆栈追踪成本低且易于共享;而崩溃转储需要调试器才能有用,且通常包含敏感内存内容。

  3. 什么是框架或供应商帧?

    文件路径或全限定名属于库、框架、运行时或已安装依赖项而非您自己的源代码的帧。示例包括node_modules、site-packages、vendor/、/usr/lib/、GOROOT、java.* / javax.*前缀以及.NET中的System.* / Microsoft.*命名空间。这些帧很少包含您正在寻找的错误,因此折叠它们可使追踪更易阅读。

  4. 为什么Python追踪中包含“在处理上述异常时”这一行?

    Python保留异常链:当一个异常在处理另一个异常时被触发,解释器会打印两者。“在处理上述异常时,又发生了另一个异常”表示隐式链,而“上述异常是以下异常的直接原因”表示通过'raise X from Y'显式设置的链。这两者帮助您判断后续错误是被先前错误引起的,还是仅仅叠加在上面发生的。

  5. Go中的panic是什么,它与异常有何不同?

    panic是Go中用于不可恢复的运行时错误的机制,其精神类似于异常但范围更窄。Go中的惯用做法是使用返回的错误值处理预期的失败情况,而将panic保留给真正意外的编程错误,如空指针解引用或越界切片访问。panic会遍历goroutine的栈,运行延迟函数,最终在未被recover捕获的情况下导致程序崩溃。

想要享受无广告的体验吗? 立即无广告

安装我们的扩展

将 IO 工具添加到您最喜欢的浏览器,以便即时访问和更快地搜索

添加 Chrome 扩展程序 添加 边缘延伸 添加 Firefox 扩展 添加 Opera 扩展

记分板已到达!

记分板 是一种有趣的跟踪您游戏的方式,所有数据都存储在您的浏览器中。更多功能即将推出!

广告 移除?
广告 移除?
广告 移除?

新闻角 包含技术亮点

参与其中

帮助我们继续提供有价值的免费工具

给我买杯咖啡
广告 移除?