| name | debugging |
| description | Debugging techniques and tools for IntelliJ development. Use when debugging IDE issues or investigating failures. |
Debugging
Documentation
Searching idea.log
When debugging IntelliJ code, search idea.log using these patterns:
Log Levels:
FINE = debug level (from LOG.debug { })
INFO = info level (from LOG.info())
Category Format:
#<abbreviated.package.path>.<ClassName>
Example: com.intellij.openapi.wm.impl.status.IdeStatusBarImpl → #c.i.o.w.i.s.IdeStatusBarImpl
Search Examples:
grep "FINE - #c.i.o.w.i.s.IdeStatusBarImpl" idea.log
grep "INFO - #c.i.o.w.i.s.IdeStatusBarImpl" idea.log
grep "#c.i.o.w.i.s.IdeStatusBarImpl" idea.log
End-to-End Behavior
When fixing issues where a user-facing entry point (script, command, API) doesn't behave as expected:
- Trace the full execution chain from entry point to actual executor before making changes
- Identify all layers that handle the relevant behavior - each layer may swallow, transform, or ignore it
- Verify the fix at the entry point the user actually invokes, not just at the layer you modified
- Add debugging output if still unsure - add to all layers to trace the issue
Converted and distributed by TomeVault | Claim this content