Events OS Metrics: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
 
(29 intermediate revisions by the same user not shown)
Line 9: Line 9:
==CpuUserTime==
==CpuUserTime==


The percentage of total CPU time spent executing code in user mode.
The percentage of total CPU time spent executing code in user mode. By default, this metric is calculated based on subsequent values read from[[/proc/stat#user|/proc/stat]] during two subsequent collections. It is also  possible to get the value from the top command output, but this has to be configured explicitly.  


Also see:  
Also see:  
* [[/proc/stat#user|/proc/stat cpu user time reading|]]
* [[/proc/stat#user|/proc/stat cpu user time reading]]
* [https://github.com/NovaOrdis/events-api/blob/master/src/main/java/io/novaordis/events/api/metric/os/mdefs/CpuUserTime.java GitHub CpuUserTime]
* [https://github.com/NovaOrdis/events-api/blob/master/src/main/java/io/novaordis/events/api/metric/os/mdefs/CpuUserTime.java GitHub CpuUserTime]


==CpuNiceTime==
==CpuNiceTime==


* <span id=""></span>CpuNiceTime ([https://github.com/NovaOrdis/events-api/blob/master/src/main/java/io/novaordis/events/api/metric/os/mdefs/CpuNiceTime.java GitHub])
The percentage of total CPU time spent executing code in user mode with low priority (nice). By default, this metric is calculated based on subsequent values read from[[/proc/stat#nice|/proc/stat]] during two subsequent collections. It is also  possible to get the value from the top command output, but this has to be configured explicitly.  


Also see:
* [[/proc/stat#nice|/proc/stat cpu nice time reading]]
* [https://github.com/NovaOrdis/events-api/blob/master/src/main/java/io/novaordis/events/api/metric/os/mdefs/CpuNiceTime.java GitHub CpuNiceTime]
==CpuSystemTime==
The percentage of total CPU time spent executing system calls on behalf of processes. The metric was used to be named <span id='CpuKernelTime'></span>"CpuKernelTime", but the name was deprecated.  By default, this metric is calculated based on subsequent values read from[[/proc/stat#system|/proc/stat]] during two subsequent collections. It is also  possible to get the value from the top command output, but this has to be configured explicitly.
Also see:
* [[/proc/stat#system|/proc/stat cpu system time reading]]
* [https://github.com/NovaOrdis/events-api/blob/master/src/main/java/io/novaordis/events/api/metric/os/mdefs/CpuKernelTime.java GitHub CpuKernelTime]
==CpuIdleTime==
The percentage of total CPU time spent in idle mode.  By default, this metric is calculated based on subsequent values read from[[/proc/stat#idle|/proc/stat]] during two subsequent collections. It is also  possible to get the value from the top command output, but this has to be configured explicitly.
Also see:
* [[/proc/stat#idle|/proc/stat cpu idle time reading]]
* [https://github.com/NovaOrdis/events-api/blob/master/src/main/java/io/novaordis/events/api/metric/os/mdefs/CpuIdleTime.java GitHub CpuIdleTime]
==CpuIoWaitTime==
The percentage of total CPU time spent waiting for I/O to complete. The CPU will not wait for IO, it will be schedule onto another task or will enter idle state. When a CPU goes into idle state for outstanding task I/O, another task will be scheduled on this CPU. On a multi-core CPU, the task waiting for I/O to complete is not running on any CPU, so the iowait of each CPU is difficult to calculate.  By default, this metric is calculated based on subsequent values read from[[/proc/stat#iowait|/proc/stat]] during two subsequent collections. It is also  possible to get the value from the top command output, but this has to be configured explicitly.
Also see:
* [[/proc/stat#iowait|/proc/stat cpu iowait time reading]]
* [https://github.com/NovaOrdis/events-api/blob/master/src/main/java/io/novaordis/events/api/metric/os/mdefs/CpuIoWaitTime.java GitHub CpuIoWaitTime]
==CpuHardwareInterruptTime==
The percentage of total CPU time spent servicing hardware interrupts.  By default, this metric is calculated based on subsequent values read from[[/proc/stat#irq|/proc/stat]] during two subsequent collections. It is also  possible to get the value from the top command output, but this has to be configured explicitly.
Also see:
* [[/proc/stat#irq|/proc/stat cpu irq time reading]]
* [https://github.com/NovaOrdis/events-api/blob/master/src/main/java/io/novaordis/events/api/metric/os/mdefs/CpuHardwareInterruptTime.java GitHub CpuHardwareInterruptTime]
==CpuSoftwareInterruptTime==
The percentage of total CPU time spent servicing software interrupts.  By default, this metric is calculated based on subsequent values read from[[/proc/stat#softirq|/proc/stat]] during two subsequent collections. It is also  possible to get the value from the top command output, but this has to be configured explicitly.
Also see:
* [[/proc/stat#softirq|/proc/stat cpu softirq time reading]]
* [https://github.com/NovaOrdis/events-api/blob/master/src/main/java/io/novaordis/events/api/metric/os/mdefs/CpuSoftwareInterruptTime.java GitHub CpuSoftwareInterruptTime]
==CpuStolenTime==
The percentage of total CPU time spent in other operating systems when running in a virtualized environment. More details: {{Internal|Linux_Virtualization_Concepts#Steal_Time|Steal Time}}.  By default, this metric is calculated based on subsequent values read from[[/proc/stat#steal|/proc/stat]] during two subsequent collections. It is also  possible to get the value from the top command output, but this has to be configured explicitly.
Also see:
* [[/proc/stat#steal|/proc/stat cpu steal time reading]]
* [https://github.com/NovaOrdis/events-api/blob/master/src/main/java/io/novaordis/events/api/metric/os/mdefs/CpuStolenTime.java GitHub CpuStolenTime]
==CpuGuestTime==
The percentage of total CPU time spent running a virtual CPU for guest operating systems under the control of the Linux kernel.  By default, this metric is calculated based on subsequent values read from[[/proc/stat#guest|/proc/stat]] during two subsequent collections. It is also  possible to get the value from the top command output, but this has to be configured explicitly.
Also see:
* [[/proc/stat#guest|/proc/stat cpu guest time reading]]
==CpuGuestNiceTime==
The percentage of total CPU time spent running a virtual CPU for niced guest operating systems under the control of the Linux kernel.  By default, this metric is calculated based on subsequent values read from[[/proc/stat#guest_nice|/proc/stat]] during two subsequent collections. It is also  possible to get the value from the top command output, but this has to be configured explicitly.
Also see:
* [[/proc/stat#guest_nice|/proc/stat cpu guest_nice time reading]]
=Memory Metrics=
==PhysicalMemoryFree==
The amount of physical RAM, left unused by the system.
Also see:
* [[Proc-meminfo#MemFree|/proc/meminfo MemFree]]
* [https://github.com/NovaOrdis/events-api/blob/master/src/main/java/io/novaordis/events/api/metric/os/mdefs/PhysicalMemoryFree.java GitHub PhysicalMemoryFree]
==PhysicalMemoryTotal==
Total amount of usable RAM, which is the amount of physical RAM installed on the system minus a number of reserved bits and the kernel binary code.
Also see:
* [[Proc-meminfo#MemTotal|/proc/meminfo MemTotal]]
* [https://github.com/NovaOrdis/events-api/blob/master/src/main/java/io/novaordis/events/api/metric/os/mdefs/PhysicalMemoryTotal.java GitHub PhysicalMemoryTotal]
==PhysicalMemoryUsed==
The amount of physical memory used by processes. It is calculated with the formula:
Used Physical Memory = MemTotal - MemFree - Buffers - Cached
Also see:
* [[Proc-meminfo#Physical_Memory_Used_by_Processes|/proc/meminfo physical memory used by processes]]
* [https://github.com/NovaOrdis/events-api/blob/master/src/main/java/io/novaordis/events/api/metric/os/mdefs/PhysicalMemoryUsed.java GitHub PhysicalMemoryUsed]
=Swap Metrics=
==SwapFree==
The total amount of free swap.


* <span id='nice'></span>'''nice''' - time in [[Linux_7_General_Concepts#USER_HZ|USER_HZ]] units spent in user mode with low priority (nice).
Also see:
* <span id='system'></span>'''system''' - time in [[Linux_7_General_Concepts#USER_HZ|USER_HZ]] units spent in system mode: kernel executing system calls on behalf of processes.
* [[Proc-meminfo#SwapFree|/proc/meminfo SwapFree]]
* <span id='idle'></span>'''idle''' - time in [[Linux_7_General_Concepts#USER_HZ|USER_HZ]] units spent in idle mode. This value should be USER_HZ times the second entry in [[/proc/uptime]].
* [https://github.com/NovaOrdis/events-api/blob/master/src/main/java/io/novaordis/events/api/metric/os/mdefs/SwapFree.java GitHub SwapFree]
* <span id='iowait'></span>'''iowait''' - time in [[Linux_7_General_Concepts#USER_HZ|USER_HZ]] units processes are waiting for I/O to complete. The CPU will not wait for IO, it will be schedule onto another task or will enter idle state. When a CPU goes into idle state for outstanding task I/O, another task will be scheduled on this CPU. On a multi-core CPU, the task waiting for I/O to complete is not running on any CPU, so the iowait of each CPU is difficult to calculate.
* <span id='irq'></span>'''irq''' - time in [[Linux_7_General_Concepts#USER_HZ|USER_HZ]] units spent servicing hardware interrupts.
* <span id='softirq'></span>'''softirq''' - time in [[Linux_7_General_Concepts#USER_HZ|USER_HZ]] units spent servicing softirqs.
* <span id='steal'></span>'''steal''' - time in [[Linux_7_General_Concepts#USER_HZ|USER_HZ]] units spent in other operating systems when running in a virtualized environment.
* <span id='guest'></span>'''guest''' - time in [[Linux_7_General_Concepts#USER_HZ|USER_HZ]] units spent running a virtual CPU for guest operating systems under the control of the Linux kernel. More details: [[Linux_Virtualization_Concepts#Steal_Time|Steal Time]].
* <span id='guest_nice'></span>'''guest_nice''' - time in [[Linux_7_General_Concepts#USER_HZ|USER_HZ]] units spent running a niced guest (virtual CPU for guest operating systems under the control of the Linux kernel).


==SwapTotal==


The total amount of swap available.


Also see:
* [[Proc-meminfo#SwapTotal|/proc/meminfo SwapTotal]]
* [https://github.com/NovaOrdis/events-api/blob/master/src/main/java/io/novaordis/events/api/metric/os/mdefs/SwapTotal.java GitHub SwapTotal]


* <span id=""></span>CpuKernelTime ([https://github.com/NovaOrdis/events-api/blob/master/src/main/java/io/novaordis/events/api/metric/os/mdefs/CpuKernelTime.java GitHub])
==SwapUsed==
* <span id=""></span>CpuIoWaitTime ([https://github.com/NovaOrdis/events-api/blob/master/src/main/java/io/novaordis/events/api/metric/os/mdefs/CpuIoWaitTime.java GitHub])
* <span id=""></span>CpuIdleTime ([https://github.com/NovaOrdis/events-api/blob/master/src/main/java/io/novaordis/events/api/metric/os/mdefs/CpuIdleTime.java GitHub])
* <span id=""></span>CpuHardwareInterruptTime ([https://github.com/NovaOrdis/events-api/blob/master/src/main/java/io/novaordis/events/api/metric/os/mdefs/CpuHardwareInterruptTime.java GitHub])
* <span id=""></span>CpuSoftwareInterruptTime ([https://github.com/NovaOrdis/events-api/blob/master/src/main/java/io/novaordis/events/api/metric/os/mdefs/CpuSoftwareInterruptTime.java GitHub])
* <span id=""></span>CpuStolenTime ([https://github.com/NovaOrdis/events-api/blob/master/src/main/java/io/novaordis/events/api/metric/os/mdefs/CpuStolenTime.java GitHub])


Memory
The amount of swap used by processes can be approximated with the formula:


* <span id="PhysicalMemoryTotal">[[Proc-meminfo#MemTotal|PhysicalMemoryTotal]]</span> ([https://github.com/NovaOrdis/events-api/blob/master/src/main/java/io/novaordis/events/api/metric/os/mdefs/PhysicalMemoryTotal.java GitHub])
Used Swap = SwapTotal - SwapFree
* <span id="PhysicalMemoryFree">[[Proc-meminfo#MemFree|PhysicalMemoryFree]]</span> ([https://github.com/NovaOrdis/events-api/blob/master/src/main/java/io/novaordis/events/api/metric/os/mdefs/PhysicalMemoryFree.java GitHub])
* <span id="PhysicalMemoryUsed">[[Proc-meminfo#Physical_Memory_Used_by_Processes|PhysicalMemoryUsed]]</span> ([https://github.com/NovaOrdis/events-api/blob/master/src/main/java/io/novaordis/events/api/metric/os/mdefs/PhysicalMemoryUsed.java GitHub])


Swap
Also see:
* [[Proc-meminfo#The_Total_Amount_of_Used_Swap|/proc/meminfo total amount of used swap]]
* [https://github.com/NovaOrdis/events-api/blob/master/src/main/java/io/novaordis/events/api/metric/os/mdefs/SwapUsed.java GitHub SwapUsed]


* SwapTotal
=Load Average Metrics=
* SwapUsed
* SwapFree


Load Average
==LoadAverageLastMinute==


* LoadAverageLastMinute
Also see:
* LoadAverageLastFiveMinutes
* [https://github.com/NovaOrdis/events-api/blob/master/src/main/java/io/novaordis/events/api/metric/os/mdefs/LoadAverageLastMinute.java GitHub LoadAverageLastMinute]
* LoadAverageLastTenMinutes
 
==LoadAverageLastFiveMinutes==
 
Also see:
* [https://github.com/NovaOrdis/events-api/blob/master/src/main/java/io/novaordis/events/api/metric/os/mdefs/LoadAverageLastFiveMinutes.java GitHub LoadAverageLastFiveMinutes]
 
==LoadAverageLastTenMinutes==
 
Also see:
* [https://github.com/NovaOrdis/events-api/blob/master/src/main/java/io/novaordis/events/api/metric/os/mdefs/LoadAverageLastTenMinutes.java GitHub LoadAverageLastTenMinutes]

Latest revision as of 14:17, 22 September 2017

Internal

Overview

CPU Metrics

CpuUserTime

The percentage of total CPU time spent executing code in user mode. By default, this metric is calculated based on subsequent values read from/proc/stat during two subsequent collections. It is also possible to get the value from the top command output, but this has to be configured explicitly.

Also see:

CpuNiceTime

The percentage of total CPU time spent executing code in user mode with low priority (nice). By default, this metric is calculated based on subsequent values read from/proc/stat during two subsequent collections. It is also possible to get the value from the top command output, but this has to be configured explicitly.

Also see:

CpuSystemTime

The percentage of total CPU time spent executing system calls on behalf of processes. The metric was used to be named "CpuKernelTime", but the name was deprecated. By default, this metric is calculated based on subsequent values read from/proc/stat during two subsequent collections. It is also possible to get the value from the top command output, but this has to be configured explicitly.

Also see:

CpuIdleTime

The percentage of total CPU time spent in idle mode. By default, this metric is calculated based on subsequent values read from/proc/stat during two subsequent collections. It is also possible to get the value from the top command output, but this has to be configured explicitly.

Also see:

CpuIoWaitTime

The percentage of total CPU time spent waiting for I/O to complete. The CPU will not wait for IO, it will be schedule onto another task or will enter idle state. When a CPU goes into idle state for outstanding task I/O, another task will be scheduled on this CPU. On a multi-core CPU, the task waiting for I/O to complete is not running on any CPU, so the iowait of each CPU is difficult to calculate. By default, this metric is calculated based on subsequent values read from/proc/stat during two subsequent collections. It is also possible to get the value from the top command output, but this has to be configured explicitly.

Also see:

CpuHardwareInterruptTime

The percentage of total CPU time spent servicing hardware interrupts. By default, this metric is calculated based on subsequent values read from/proc/stat during two subsequent collections. It is also possible to get the value from the top command output, but this has to be configured explicitly.

Also see:

CpuSoftwareInterruptTime

The percentage of total CPU time spent servicing software interrupts. By default, this metric is calculated based on subsequent values read from/proc/stat during two subsequent collections. It is also possible to get the value from the top command output, but this has to be configured explicitly.

Also see:

CpuStolenTime

The percentage of total CPU time spent in other operating systems when running in a virtualized environment. More details:

Steal Time

. By default, this metric is calculated based on subsequent values read from/proc/stat during two subsequent collections. It is also possible to get the value from the top command output, but this has to be configured explicitly.

Also see:

CpuGuestTime

The percentage of total CPU time spent running a virtual CPU for guest operating systems under the control of the Linux kernel. By default, this metric is calculated based on subsequent values read from/proc/stat during two subsequent collections. It is also possible to get the value from the top command output, but this has to be configured explicitly.

Also see:

CpuGuestNiceTime

The percentage of total CPU time spent running a virtual CPU for niced guest operating systems under the control of the Linux kernel. By default, this metric is calculated based on subsequent values read from/proc/stat during two subsequent collections. It is also possible to get the value from the top command output, but this has to be configured explicitly.

Also see:

Memory Metrics

PhysicalMemoryFree

The amount of physical RAM, left unused by the system.

Also see:

PhysicalMemoryTotal

Total amount of usable RAM, which is the amount of physical RAM installed on the system minus a number of reserved bits and the kernel binary code.

Also see:

PhysicalMemoryUsed

The amount of physical memory used by processes. It is calculated with the formula:

Used Physical Memory = MemTotal - MemFree - Buffers - Cached

Also see:

Swap Metrics

SwapFree

The total amount of free swap.

Also see:

SwapTotal

The total amount of swap available.

Also see:

SwapUsed

The amount of swap used by processes can be approximated with the formula:

Used Swap = SwapTotal - SwapFree

Also see:

Load Average Metrics

LoadAverageLastMinute

Also see:

LoadAverageLastFiveMinutes

Also see:

LoadAverageLastTenMinutes

Also see: