Debug tool window
When you start a debugger session, the Debug tool window appears. Use this window to control the debugger session, display and analyze the program data (frames, threads, variables, and so on), and perform various debugger actions.
This is a brief overview of the Debug tool window. For general instructions on using tool windows, refer to Tool windows.
To cycle through the tool window tabs, press Alt+Right and Alt+Left.
![Debug tool window overview Debug tool window overview](https://resources.jetbrains.com/help/img/idea/2024.2/debug_overview.png)
Sessions
The available debug sessions are separated into tabs in the top part of the Debug tool window.
![Session tabs Session tabs](https://resources.jetbrains.com/help/img/idea/2024.2/debug_session_tabs.png)
If you enable the Services window for specific run/debug configurations, the entire view of the Debug window will be displayed inside the Services window when you debug any of these configurations.
All the information like inline variable values and execution point is shown for the selected session tab. This is important if you are running several debug sessions in parallel that use the same classes.
![Inline variables view and execution point for the current session Inline variables view and execution point for the current session](https://resources.jetbrains.com/help/img/idea/2024.2/debug_session_tabs_example.png)
Tabs
The Debug tool window shows the following tabs for each session:
Frames: lets you navigate in call stacks of the threads.
Variables: lists the variables available in the current context and lets you analyze and modify the program state.
Watches: lets you manage watches. By default, watches are shown on the Variables tab for more efficient use of the screen space. If you have a lot of watches, consider viewing them in a separate tab.
Console: displays the program output.
For local sessions, the tab works the same as when you just run the program without the debugger attached. The only difference is that debugger output (for example, log messages from breakpoints) is added to the console.
When you attach to a process, the program output is not redirected and only the debugger output is shown in the debugger console.
Threads: displays the list of live threads and lets you switch between them. From this tab, you can export threads information in text format.
Memory: provides the information on the currently available objects on the heap and lets you monitor and analyze their lifetime.
Overhead: lets you monitor the resources consumed by particular debugger features and optimize the debugger performance.
Show/hide tabs
Click
and select which tabs you want to see.
Restore default layout
If you changed the layout of the Debug tool window and don't like the new arrangement, you can revert it to the default state.
Click
in the top-right corner of the Debug tool window, then click Restore Default Layout.
Move tabs
You can arrange the tabs to fit your preference. You can move a tab to another location or group a tab with another tab, so that they share the same space on the screen.
Drag the tab header to the desired location. The blue frame indicates the destination.