irockel/tda

TDA - Thread Dump Analyzer (for Java). Analyze your Thread Dumps with a GUI or use it as MCP Server.

解决的问题

TDA(线程转储分析器)通过提供一种结构化的方式来分析 Java 虚拟机的线程转储和堆信息,帮助 Java 开发者诊断性能瓶颈、死锁和内存问题。它取代了手动阅读日志文件中复杂原始堆栈跟踪的需要。

工作原理

TDA 解析文本或基于 JSON 的线程转储,并将其组织成直观的树状结构。它可以作为独立的 GUI 应用程序、VisualVM 或 JConsole 的插件,或作为无头 MCP 服务器使用。在 MCP 模式下,它提供了一组工具(如 check_deadlocksfind_long_running),允许 AI 代理在不读取整个原始文件的情况下,以编程方式分析日志。

适用人群

需要调试生产环境问题、分析虚拟线程钉住情况,或识别 Java 应用程序中挂起线程的 Java 开发者和系统管理员(支持从 1.4.x 到 21+ 的版本)。

主要亮点

  • AI 集成:实现 Model Context Protocol (MCP),通过 Cursor 或 Claude Desktop 等 AI 工具进行无头分析。
  • 虚拟线程支持:专门检测虚拟线程钉住和载体线程关系(Java 19+)。
  • 死锁检测:自动识别死锁,并提供详细的监视器信息。
  • 多模式部署:可作为独立 JAR、VisualVM 插件、JConsole 插件或原生 macOS 二进制文件使用。
  • 长时间运行线程检测:通过比较连续的转储,找出在多个快照中持续存在的线程。

相关

  • 项目
  • 项目
  • Dispatch
  • 项目
  • 项目