
Diagnostics
JFR: The Events You Actually Need
Sixty seconds of default settings produced 4.3 MB, three quarters of it one event type, and none of it answered whether the application was lock-contended.
Topic
Articles on “profiling”

Diagnostics
Sixty seconds of default settings produced 4.3 MB, three quarters of it one event type, and none of it answered whether the application was lock-contended.

Runtime
One collection, reported as 2.275 ms by the GC log and 29.6 ms by the safepoint log. The gap is time to safepoint, and each instrument hides a different part of it.

Frameworks
Startup time is class loading, condition evaluation and JIT warmup in some proportion. Measure the split before reaching for a fix.

Diagnostics
A thread dump answers precise questions if you ask them precisely. What each state really means, and the traps that produce confident wrong diagnoses.