Agent Resource Dashboard Config
Home > Dashboard > Agent Resource Dashboard
Requirements
The WhaTap Java agent 2.2.39 or later is required.
The Agent Resource Dashboard menu monitors key metrics such as memory, transactions, and threads for individual Java agents in real time, and displays data up to 3 hours ago. This allows you to see changes in memory usage, active transactions, and executing threads, and analyze the root causes of resource issues.

Basic screen
Agent Resource Dashboard allows you to check the memory pool status and related metric change trend of the running agent at a glance. Real-time Java memory area and key metrics you can check on the dashboard are as follows.
Widget guide
Real-time Java memory widget
You can check the status of the JVM main memory pool through the Real times by Java area widget in real time. Each Java memory area chart displays the memory amount (in MB) and percentage (in %) in use.
-
Metaspace
It is the area where class metadata is stored.
-
CodeHeap non-profiled nmethod, CodeHeap profiled nmethod, CodeHeap non-nmethods
This area stores the machine code generated by the JIT (Just-In-Time) compiler. CodeHeap non-profiled nmethod, CodeHeap profiled nmethod, and CodeHeap non-nmethods store each compiled code according to the purpose.
-
G1 Survivor Space
This is the area where the objects survived in G1 GC are temporarily stored.
-
G1 Eden Space
This is the area where newly created objects are allocated first.
-
G1 Old Gen
This is the area where the objects survived through Young GC are moved. As memory increases, you can check if the leak is centered around Old Gen.
-
Compressed Class Space
This area compresses and stores class-related pointers and is managed separately from the Metaspace.
-
Individual chart: Displays each metric as a separate bar, allowing you to clearly compare maximum values for each metric.
-
Integrated chart: Relative sizes for each metric compared to the whole are displayed at a glance.
-
Donut chart: The proportions for each metric can be checked by expressing the whole as circular proportions.
-
Multi-line chart: The trends for all metrics can be checked.
Widget for key metrics
-
Memory
It displays the total memory utilization (%). It is the total usage that synthesizes internal configurations such as Eden, Old Gen, and Metaspace.
-
CpuTime
The CPU time that the JVM spent executing application code is represented in milliseconds (ms).
-
GCCount, GCOldgenCount
GCCount collects only the number of GCs that occurred within a specific period, and GCOldgenCount collects only the number of GCs targeting the Old area separately.
-
GCTime
The time taken for garbage collection is represented in ms.
-
Cpu
The CPU utilization (%) of the JVM process is displayed.
-
TPS
The number of processed transactions per second is displayed.
-
FileDescriptor
It displays the number of file descriptors in use, such as open files or sockets.
-
ObjectPendingFinalizationCount
It displays the number of objects that remain in
finalize()state that the GC has to process.
Real-time inquiry
When viewing in real time, you can check the Resource details panel through the Heap histogram, Active transaction, and Runnable thread buttons on the upper right.

Heap histogram
In the Heap histogram tab, you can analyze the heap memory resident Java class information and view the top 100 classes that occupy the most memory. If a class occupies excessive amount of memory, you may suspect a memory leak.
Active transaction
You can view a list of running transactions in the Active transaction tab. You can check the detailed information such as start time, transaction elapsed time, and SQL/HTTP calls. You can find bottlenecks by checking if specific transactions take a long time or use a lot of resources.
Runnable thread
In the Runnable thread tab, you can check the list of threads in runnable state within the JVM in real time. It is useful to determine which thread is causing issues upon a high CPU usage or delayed response.
Historical inquiry
You can use the time selector to select a specific past point and check the resource status at that time point. You can query the resource status up to 3 hours ago and analyze transactions, SQLs, and HTTP calls that occurred at that time. This allows for effectively tracing of the root cause of a sudden spike in CPU or memory usage or a sharp drop in TPS.

When viewing a past time point, you can view the Top 30 Statistics panel where you can check the top 30 statistical data by clicking the Transaction, SQL statistics, and HTTPC statistics buttons on the upper right.

Transaction statistics
In the Transaction tab, you can sort the transactions performed at a specific time point by conditions such as response time and execution count, and view the top 30 lists. You can check the items with long response times or high execution counts first.
Avg memory allocation query settings
If the Avg memory allocation entry is not displayed in the transaction statistics of a past time point, check whether the following option is enabled. However, this option may have a performance impact in the applications with a high average TPS, so it is recommended to apply it only in the environment with an average TPS of 300 or less.
-
trace_malloc_enabled Boolean
Default
falseIt collects average allocated memory per transaction.
SQL statistics
In the SQL tab, you can view the top 30 lists of SQL queries executed at a specific time point, sorted by the execution count, total time, and such. When the DB load increases, you can find which SQL queries are costing the most among those executed at the same time.
HTTPC statistics
You can sort the external HTTP calls in the HTTPC tab to view the top 30 lists. You can check if there is any bottleneck when there are many external APIs or internal HTTP requests.