Diagnostics (Apache Tomcat 8.5.87 API Documentation)

Package org.apache.tomcat.util

## Class Diagnostics

- java.lang.Object
- - org.apache.tomcat.util.Diagnostics

-     public class Diagnostics
      extends java.lang.Object

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `Diagnostics()` |

  - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `static java.lang.String` | `findDeadlock()` | Check if any threads are deadlocked.
    `static void` | `gc()` | Initiate garbage collection via MX Bean
    `static java.lang.String` | `getThreadDump()` | Retrieves a formatted JVM thread dump.
    `static java.lang.String` | `getThreadDump​(java.util.Enumeration<java.util.Locale> requestedLocales)` | Retrieves a formatted JVM thread dump.
    `static java.lang.String` | `getThreadDump​(StringManager requestedSm)` | Retrieve a JVM thread dump formatted using the given StringManager.
    `static java.lang.String` | `getVMInfo()` | Retrieves a formatted JVM information text.
    `static java.lang.String` | `getVMInfo​(java.util.Enumeration<java.util.Locale> requestedLocales)` | Retrieves a formatted JVM information text.
    `static java.lang.String` | `getVMInfo​(StringManager requestedSm)` | Retrieve a JVM information text formatted using the given StringManager.
    `static boolean` | `isThreadContentionMonitoringEnabled()` | Check whether thread contention monitoring is enabled.
    `static boolean` | `isThreadCpuTimeEnabled()` | Check whether thread cpu time measurement is enabled.
    `static void` | `resetPeakThreadCount()` | Reset peak thread count in ThreadMXBean
    `static void` | `resetPeakUsage​(java.lang.String name)` | Reset peak memory usage data in MemoryPoolMXBean
    `static boolean` | `setCollectionUsageThreshold​(java.lang.String name, long threshold)` | Set collection usage threshold in MemoryPoolMXBean
    `static void` | `setLoggerLevel​(java.lang.String loggerName, java.lang.String levelName)` | Set logger level
    `static void` | `setThreadContentionMonitoringEnabled​(boolean enable)` | Enable or disable thread contention monitoring via the ThreadMxMXBean.
    `static void` | `setThreadCpuTimeEnabled​(boolean enable)` | Enable or disable thread cpu time measurement via the ThreadMxMXBean.
    `static boolean` | `setUsageThreshold​(java.lang.String name, long threshold)` | Set usage threshold in MemoryPoolMXBean
    `static void` | `setVerboseClassLoading​(boolean verbose)` | Set verbose class loading
    `static void` | `setVerboseGarbageCollection​(boolean verbose)` | Set verbose garbage collection logging

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### Diagnostics

          public Diagnostics()

  - ### Method Detail

    - #### isThreadContentionMonitoringEnabled

          public static boolean isThreadContentionMonitoringEnabled()

      Check whether thread contention monitoring is enabled.
      Returns:
        true if thread contention monitoring is enabled

    - #### setThreadContentionMonitoringEnabled

          public static void setThreadContentionMonitoringEnabled​(boolean enable)

      Enable or disable thread contention monitoring via the ThreadMxMXBean.
      Parameters:
        `enable` - whether to enable thread contention monitoring

    - #### isThreadCpuTimeEnabled

          public static boolean isThreadCpuTimeEnabled()

      Check whether thread cpu time measurement is enabled.
      Returns:
        true if thread cpu time measurement is enabled

    - #### setThreadCpuTimeEnabled

          public static void setThreadCpuTimeEnabled​(boolean enable)

      Enable or disable thread cpu time measurement via the ThreadMxMXBean.
      Parameters:
        `enable` - whether to enable thread cpu time measurement

    - #### resetPeakThreadCount

          public static void resetPeakThreadCount()

      Reset peak thread count in ThreadMXBean

    - #### setVerboseClassLoading

          public static void setVerboseClassLoading​(boolean verbose)

      Set verbose class loading
      Parameters:
        `verbose` - whether to enable verbose class loading

    - #### setLoggerLevel

          public static void setLoggerLevel​(java.lang.String loggerName,
                                            java.lang.String levelName)

      Set logger level
      Parameters:
        `loggerName` - the name of the logger
        `levelName` - the level to set

    - #### setVerboseGarbageCollection

          public static void setVerboseGarbageCollection​(boolean verbose)

      Set verbose garbage collection logging
      Parameters:
        `verbose` - whether to enable verbose gc logging

    - #### gc

          public static void gc()

      Initiate garbage collection via MX Bean

    - #### resetPeakUsage

          public static void resetPeakUsage​(java.lang.String name)

      Reset peak memory usage data in MemoryPoolMXBean
      Parameters:
        `name` - name of the MemoryPoolMXBean or "all"

    - #### setUsageThreshold

          public static boolean setUsageThreshold​(java.lang.String name,
                                                  long threshold)

      Set usage threshold in MemoryPoolMXBean
      Parameters:
        `name` - name of the MemoryPoolMXBean
        `threshold` - the threshold to set
      Returns:
        true if setting the threshold succeeded

    - #### setCollectionUsageThreshold

          public static boolean setCollectionUsageThreshold​(java.lang.String name,
                                                            long threshold)

      Set collection usage threshold in MemoryPoolMXBean
      Parameters:
        `name` - name of the MemoryPoolMXBean
        `threshold` - the collection threshold to set
      Returns:
        true if setting the threshold succeeded

    - #### findDeadlock

          public static java.lang.String findDeadlock()

      Check if any threads are deadlocked. If any, print the thread dump for those threads.
      Returns:
        a deadlock message and the formatted thread dump of the deadlocked threads

    - #### getThreadDump

          public static java.lang.String getThreadDump()

      Retrieves a formatted JVM thread dump. The default StringManager will be used.
      Returns:
        the formatted JVM thread dump

    - #### getThreadDump

          public static java.lang.String getThreadDump​(java.util.Enumeration<java.util.Locale> requestedLocales)

      Retrieves a formatted JVM thread dump. The given list of locales will be used to retrieve a StringManager.
      Parameters:
        `requestedLocales` - list of locales to use
      Returns:
        the formatted JVM thread dump

    - #### getThreadDump

          public static java.lang.String getThreadDump​(StringManager requestedSm)

      Retrieve a JVM thread dump formatted using the given StringManager.
      Parameters:
        `requestedSm` - the StringManager to use
      Returns:
        the formatted JVM thread dump

    - #### getVMInfo

          public static java.lang.String getVMInfo()

      Retrieves a formatted JVM information text. The default StringManager will be used.
      Returns:
        the formatted JVM information text

    - #### getVMInfo

          public static java.lang.String getVMInfo​(java.util.Enumeration<java.util.Locale> requestedLocales)

      Retrieves a formatted JVM information text. The given list of locales will be used to retrieve a StringManager.
      Parameters:
        `requestedLocales` - list of locales to use
      Returns:
        the formatted JVM information text

    - #### getVMInfo

          public static java.lang.String getVMInfo​(StringManager requestedSm)

      Retrieve a JVM information text formatted using the given StringManager.
      Parameters:
        `requestedSm` - the StringManager to use
      Returns:
        the formatted JVM information text