Skip to main content

debugging

Debugging techniques and tools for IntelliJ development. Use when debugging IDE issues or investigating failures.

Quellinformationen

Repository
JetBrains/MPS
Letzte Quellaktivität
14. April 2026 um 17:22
Erkannte Sprache von SKILL.md
Englisch
Sterne
1.662
Forks
307

Installationsoptionen

Standardmäßig ist der Prompt ausgewählt, der zuerst die Quelle prüft. Sie können zu einem direkten Befehl wechseln oder eine lokale Kopie herunterladen.

Quelldateien prüfen

Lesen Sie SKILL.md und alle von SkillsMP angezeigten Begleitdateien, bevor Sie sich für eine Installation entscheiden.

SKILL.md wird angezeigt

SKILL.md
Quellanweisungen · Schreibgeschützte Vorschau
name
debugging
description
Debugging techniques and tools for IntelliJ development. Use when debugging IDE issues or investigating failures.
# Debugging ## Documentation - [Logger FAQ](../../../../docs/IntelliJ-Platform/4_man/Logger.md) - Frequently asked questions about logging - [How to Investigate Freezes](../../../../docs/IntelliJ-Platform/4_man/Performance/How-To-Investigate-Freezes.md) - Diagnosing IDE freezes - [Exception Analyzing FAQ](../../../../docs/IntelliJ-Platform/4_man/Exception-Analyzing-FAQ.md) - Analyzing and categorizing exceptions ## 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:** ```bash # Debug logs from IdeStatusBarImpl grep "FINE - #c.i.o.w.i.s.IdeStatusBarImpl" idea.log # Info logs from IdeStatusBarImpl grep "INFO - #c.i.o.w.i.s.IdeStatusBarImpl" idea.log # All logs from a class 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: 1. **Trace the full execution chain** from entry point to actual executor before making changes 2. **Identify all layers** that handle the relevant behavior - each layer may swallow, transform, or ignore it 3. **Verify the fix at the entry point** the user actually invokes, not just at the layer you modified 4. **Add debugging output** if still unsure - add to all layers to trace the issue
Auf GitHub ansehen