public final class ThreadCpuStats
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
static class |
ThreadCpuStats.CpuUsage
Keeps track of the cpu usage for a single thread.
|
static class |
ThreadCpuStats.CpuUsageComparator
Comparator for sorting cpu usage based on one of the columns.
|
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
CURRENT_TIME
Current time in milliseconds.
|
static java.lang.String |
FIFTEEN_MIN
Constant representing fifteen minutes.
|
static java.lang.String |
FIVE_MIN
Constant representing five minutes.
|
static java.lang.String |
ID
Thread ID.
|
static java.lang.String |
JVM_USAGE_PERCENT
JVM usage as a percentage.
|
static java.lang.String |
JVM_USAGE_TIME
JVM usage time in nanoseconds.
|
static java.lang.String |
NAME
Thread name.
|
static java.lang.String |
ONE_MIN
Constant representing one minute.
|
static java.lang.String |
OVERALL
Constant representing the overall time.
|
static java.lang.String |
THREADS
Threads.
|
static java.lang.String |
UPTIME_MS
uptime in milliseconds.
|
Modifier and Type | Method and Description |
---|---|
static ThreadCpuStats |
getInstance()
Return the singleton instance.
|
ThreadCpuStats.CpuUsage |
getOverallCpuUsage()
Overall usage for the jvm.
|
java.util.List<ThreadCpuStats.CpuUsage> |
getThreadCpuUsages()
List of cpu usages for each thread.
|
java.util.Map<java.lang.String,java.lang.Object> |
getThreadCpuUsages(ThreadCpuStats.CpuUsageComparator cmp)
Utility function that returns a Map containing cpu usages for threads.
|
boolean |
isRunning()
Returns true if cpu status are currently being collected.
|
void |
printThreadCpuUsages()
Utility function that dumps the cpu usages for the threads to stdout.
|
void |
printThreadCpuUsages(java.io.OutputStream out,
ThreadCpuStats.CpuUsageComparator cmp)
Utility function that dumps the cpu usages for the threads to stdout.
|
void |
start()
Start collecting cpu stats for the threads.
|
void |
stop()
Stop collecting cpu stats for the threads.
|
static java.lang.String |
toDuration(long inputTime)
Convert time in nanoseconds to a duration string.
|
static double |
toPercent(long value,
long total)
Helper function for computing percentage.
|
public static final java.lang.String ONE_MIN
public static final java.lang.String FIVE_MIN
public static final java.lang.String FIFTEEN_MIN
public static final java.lang.String OVERALL
public static final java.lang.String CURRENT_TIME
public static final java.lang.String UPTIME_MS
public static final java.lang.String JVM_USAGE_TIME
public static final java.lang.String JVM_USAGE_PERCENT
public static final java.lang.String ID
public static final java.lang.String NAME
public static final java.lang.String THREADS
public static ThreadCpuStats getInstance()
public boolean isRunning()
public void start()
public void stop()
public ThreadCpuStats.CpuUsage getOverallCpuUsage()
public java.util.List<ThreadCpuStats.CpuUsage> getThreadCpuUsages()
public static double toPercent(long value, long total)
public static java.lang.String toDuration(long inputTime)
public void printThreadCpuUsages()
public java.util.Map<java.lang.String,java.lang.Object> getThreadCpuUsages(ThreadCpuStats.CpuUsageComparator cmp)
ThreadCpuStats.CpuUsageComparator
passed.cmp
- order to use for the resultspublic void printThreadCpuUsages(java.io.OutputStream out, ThreadCpuStats.CpuUsageComparator cmp)
out
- stream where output will be writtencmp
- order to use for the results