jvm-runtime-diagnostics

Diagnose JVM runtime incidents using jcmd, jhsdb, and JFR.

Updated Apr 9, 2026
One-click install
npx skills add https://github.com/ririnto/sinon --skill jvm-runtime-diagnostics
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: jvm-runtime-diagnostics
Source: https://github.com/ririnto/sinon/tree/main/plugins/jvm/skills/jvm-runtime-diagnostics
Command: npx skills add https://github.com/ririnto/sinon --skill jvm-runtime-diagnostics

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

Triage JVM runtime incidents using standard diagnostic tools and an evidence-first workflow to minimize guesswork and manual toil.

Core Features & Use Cases

  • Stack trace and thread-dump interpretation to identify blocking, deadlocks, or contention.
  • Guided tool selection for live triage, including jcmd, jstack, jmap, and JFR, with safety considerations.
  • Serviceability Agent guidance for core dumps and SA workflows via jhsdb when deeper analysis is required.

Quick Start

Provide the PID of the target JVM and a brief symptom description to start the triage sequence.

Frequently Asked Questions about jvm-runtime-diagnostics

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I diagnose a JVM runtime incident that is blocking or experiencing memory pressure?

Triage a live JVM by providing its PID and a symptom description to initiate an evidence-first sequence. This workflow guides you through running safe diagnostic commands to collect thread dumps, JFR recordings, and heap data.

Can I use jhsdb to analyze a JVM core dump when deeper analysis is required?

Yes, you can use jhsdb to analyze a JVM core dump. The Serviceability Agent within jhsdb provides guidance for SA workflows and core dump analysis when standard live triage tools are insufficient.

What permissions do I need to run jcmd and jstack on a target JVM process?

Running jcmd and jstack on a target JVM requires appropriate user permissions matching the target process owner. You must also have the target PID and ensure the diagnostic tools are accessible on the same host.

When should I use Java Flight Recorder (JFR) instead of jstack for JVM triage?

Use Java Flight Recorder (JFR) instead of jstack when you need continuous profiling data for memory pressure or startup failures, whereas jstack is better suited for capturing immediate thread dumps to identify blocking or deadlocks.

Why does JVM diagnostics workflow require access to the same host as the target process?

JVM live triage is limited by host accessibility, requiring direct local access to the target PID and appropriate user permissions. It focuses on runtime incidents like crashes or memory pressure and does not analyze remote processes.