perf
Description
The perf command extracts a values from a PerfCounter. You can get a list of all available counters with a short description (as provided by the API) with the list-metrics command.
Options
Besides the general options this command supports the following options:
option | description |
---|---|
--vimtype VIMTYPE | the object type to check, see common options |
--vimname VIMNAME | name of the vimtype object, see common options |
--critical CRITICAL | warning threshold, see common options |
--warning WARNING | warning threshold, see common options |
--perfcounter PERFCOUNTER | a colon separated string composed of groupInfo.key:nameInfo.key:rollupType |
--perfinstance PERFINSTANCE | the instance of of the metric to monitor. defaults to empty string, which is not always available but means an aggregated value over all instances. Can also be * meaning all instances, in this case the threshold is checked against each of the instances |
--maintenance-state | exit state if the host is in maintenance, one of OK, WARNING, CRITICAL, UNKNOWN (only has a meaning with --vimtype HostSystem |
--interval INTERVALID | defaults to 20 which works in most cases, other possible values 300, 1800, 7200, 86400 and maybe more … |
In case of --vimtype HostSystem
it may be useful to omit the --vimname
when
you run this command directly against the HostSystem (not through the vcenter).
Examples
# check for too much cpu usage
check_vsphere perf -s vcenter.example.com -u naemon@vsphere.local -nossl \
--vimtype HostSystem --vimname esx1.int.example.com \
--perfcounter cpu:usage:average --perfinstance '' \
--critical 80
# check for too less cpu usage (application died?)
check_vsphere perf -s vcenter.example.com -u naemon@vsphere.local -nossl \
--vimtype HostSystem --vimname esx1.int.example.com \
--perfcounter cpu:usage:average \
--critical 5:
# check if there was a reboot within the last 10 minutes
check_vsphere perf -s vcenter.example.com -u naemon@vsphere.local -nossl \
--vimtype HostSystem --vimname esx1.int.example.com \
--perfcounter sys:uptime:latest \
--critical 600:
# check disk latency
$ check_vsphere perf -s vcenter.example.com -u naemon@vsphere.local -nossl \
--vimname esx1.int.example.com --vimtype HostSystem \
--perfcounter disk:totalLatency:average
UNKNOWN: Cannot find disk:totalLatency:average for the queried resources
# On that error you may want to try --perfinstance '*'
$ check_vsphere perf -s vcenter.example.com -u naemon@vsphere.local -nossl \
--vimname esx1.int.example.com --vimtype HostSystem \
--perfcounter disk:totalLatency:average --perfinstance '*'
OK: disk:totalLatency:average_naa.6000eb3810d426400000000000000277 has value 0 Millisecond
disk:totalLatency:average_naa.600605b00ba8cb0022564867b8c8cc32 has value 2 Millisecond
disk:totalLatency:average_naa.6000eb3810d4264000000000000000b2 has value 0 Millisecond
disk:totalLatency:average_naa.600605b00ba8cb001fd947850523e56d has value 0 Millisecond
disk:totalLatency:average_naa.600605b00ba8cb0029700b163217244e has value 6 Millisecond
disk:totalLatency:average_naa.6000eb3810d4264000000000000002b3 has value 1 Millisecond
| 'disk:totalLatency:average_naa.6000eb3810d426400000000000000277'=0.0ms;;;;
'disk:totalLatency:average_naa.600605b00ba8cb0022564867b8c8cc32'=2.0ms;;;;
...
$ check_vsphere perf -s vcenter.example.com -u naemon@vsphere.local -nossl \
--vimname esx1.int.example.com --vimtype HostSystem \
--perfcounter disk:totalLatency:average --perfinstance 'naa.600605b00ba8cb0022564867b8c8cc32'
$ check_vsphere perf -s vcenter.example.com -u naemon@vsphere.local -nossl \
--vimname esx1.int.example.com --vimtype HostSystem --perfcounter power:power:average
OK: Counter power:power:average on HostSystem:esx1.int.example.com reported 227 Watt
| 'power:power:average'=227.0;;;;
Rosetta
check_vmware_esx | check_vsphere | vimtypes |
---|---|---|
--select cpu --subselect usage | perf --perfcounter cpu:usage:average | HostSystem, VirtualMachine |
--select cpu --subselect ready | perf --perfcounter cpu:ready:summation | HostSystem, VirtualMachine |
--select cpu --subselect wait | perf --perfcounter cpu:wait:summation | HostSystem, VirtualMachine |
--select mem --subselect usage | perf --perfcounter mem:usage:average | HostSystem, VirtualMachine |
--select mem --subselect consumed | perf --perfcounter mem:consumed:average | HostSystem, VirtualMachine |
--select mem --subselect swapused | perf --perfcounter mem:swapused:average | HostSystem, VirtualMachine |
--select mem --subselect overhead | perf --perfcounter mem:overhead:average | HostSystem, VirtualMachine |
--select mem --subselect memctl | perf --perfcounter mem:vmmemctl:average | HostSystem, VirtualMachine |
--select io --subselect aborted | perf --perfcounter disk:commandsAborted:summation | HostSystem, VirtualMachine |
--select io --subselect resets | perf --perfcounter disk:busResets:summation | HostSystem, VirtualMachine |
--select io --subselect read | perf --perfcounter disk:read:average | HostSystem, VirtualMachine |
--select io --subselect read_latency | perf --perfcounter disk:totalReadLatency:average | HostSystem, VirtualMachine |
--select io --subselect write | perf --perfcounter disk:write:average | HostSystem, VirtualMachine |
--select io --subselect write_latency | perf --perfcounter disk:totalWriteLatency:average | HostSystem, VirtualMachine |
--select io --subselect usage | perf --perfcounter disk:usage:average | HostSystem, VirtualMachine |
--select io --subselect kernel_latency | perf --perfcounter disk:kernelLatency:average | HostSystem, VirtualMachine |
--select io --subselect device_latency | perf --perfcounter disk:deviceLatency:average | HostSystem, VirtualMachine |
--select io --subselect queue_latency | perf --perfcounter disk:queueLatency:average | HostSystem, VirtualMachine |
--select io --subselect total_latency | perf --perfcounter disk:totalLatency:average | HostSystem, VirtualMachine |
--select net --subselect usage | perf --perfcounter net:usage:average | HostSystem, VirtualMachine |
--select net --subselect receive | perf --perfcounter net:received:average | HostSystem, VirtualMachine |
--select net --subselect send | perf --perfcounter net:transmitted:average | HostSystem, VirtualMachine |
--select uptime | perf --perfcounter sys:uptime:latest | HostSystem,VirtualMachine |
--select cluster --subselect effectivecpu | perf --perfcounter clusterservices:effectivecpu:average | ClusterComputeResource |
--select cluster --subselect effectivemem | perf --perfcounter clusterservices:effectivemem:average | ClusterComputeResource |
--select cluster --subselect failover | perf --perfcounter clusterservices:failover:latest | ClusterComputeResource |
--select cluster --subselect cpufairness | perf --perfcounter clusterservices:cpufairness:latest | ClusterComputeResource |
--select cluster --subselect memfairness | perf --perfcounter clusterservices:memfairness:latest | ClusterComputeResource |