Performance Monitoring Tools

jVisualVM

JDK out of box monitoring tool to understand the CPU, Memory, Thread and loaded classes.

Thread Logic

Thread Logic is a GUI based thread dump parsing tool, which performs the following major tasks:

Memory Analyzer Tool

The Eclipse Memory Analyzer is a fast and feature-rich Java heap analyzer tool that helps in finding the memory leaks and reduce memory consumption. The Memory Analyzer is used to analyze productive heap dumps with hundreds of millions of objects, quickly calculate the retained sizes of objects, see which is preventing the Garbage Collector from collecting objects, and run a report to automatically extract leak suspects.

Oracle DB Reports

It is an Automatic Workload Repository (AWR) used to collect performance statistics on,

  • Wait events used to identify performance problems.
  • Time model statistics indicating the amount of DB time associated with a process from the V$SESS_TIME_MODEL and V$SYS_TIME_MODEL views.
  • Active Session History (ASH) statistics from the V$ACTIVE_SESSION_HISTORY view.
  • Some system and session statistics from the V$SYSSTAT and V$SESSTAT views.
  • Object usage statistics.
  • Resource intensive SQL statements.

Oracle 10g introduced the Active Session History (ASH) as part of the Diagnostics and Tuning Pack. It samples information from the [G]V$ views allowing to see current and historical information about active sessions on the database.

The Automatic Database Diagnostic Monitor (ADDM) analyzes data in the Automatic Workload Repository (AWR) to identify potential performance bottlenecks. For each of the identified issues, it locates the root cause and provides recommendations for correcting the problem. An ADDM analysis task is performed and its findings and recommendations stored in the database every time an AWR snapshot is taken provided the STATISTICS_LEVEL parameter is set to TYPICAL or ALL. The ADDM analysis includes the following:

  • CPU load
  • Memory usage
  • I/O usage
  • Resource intensive SQL
  • Resource intensive PL/SQL and Java
  • RAC issues
  • Application issues
  • Database configuration issues
  • Concurrency issues
  • Object contention

nmon

Nmon is short for Nigel's performance Monitor for Linux on POWER, x86, x86_64, Mainframe & now ARM (Raspberry Pi). It is a systems administrator, tuner, benchmark tool that gives a huge amount of important performance information in one go. It can output the data in two ways:

  1. Display the data on screen (console, telnet, VNC, putty or X Windows) using curves for low CPU impact, which is updated once every two seconds. The user can hit single characters on the keyboard to enable/disable various sorts of data.
  2. Display the CPU, memory, network, disks (mini graphs or numbers), file systems, NFS, top processes, resources (Linux version & processors) and on Power micro-partition information.