check_eseries_controller statistics

Checks all available metrics on the eSeries controller.

Description

This plugin monitors the metrics from the eSeries controller. Any metric that the controller exports can be monitored – even one that was not available when we wrote this plugin.

The downside is that the plugin cannot provide defaults for thresholds, uom and min/max values. Each of these must be configured on the command line. But using config files makes this task much easier. We also provide some example files.

A typical usage would be:

check_eseries_controller statistics [...] ‑‑config=cpuAvgUtilization.toml
            2 controller checked
            070000000000000000000001: 15.034
            070000000000000000000002: 15.124
            | '070000000000000000000001_cpuAvgUtilization'=15.034%;80;95;0;100              '070000000000000000000002_cpuAvgUtilization'=15.124%;80;95;0;100

All the specifics for the CPU Utilisation metric are encapsulated in the cpuAvgUtilization.toml file. It would look like this:

metric = "cpuAvgUtilization"
perfdata-uom-string = "%"
warning = "80"
critical = "95"
comparison = "gt"
max = "100"
min = "0"

Some example config-files are in the tar that also contained the check binary.

Finding the Metrics

The explore subcommand returns a full list of metrics provided by the controller.

Example

check_eseries_controller statistics [...] ‑‑system-id=4D…99C5 explore
----------------------------------
-- List of all possible metrics --
----------------------------------
averageReadOpSize
averageWriteOpSize
cacheHitBytesPercent
combinedHitResponseTime
combinedHitResponseTimeStdDev
combinedIOps
combinedResponseTime
combinedResponseTimeStdDev
combinedThroughput
cpuAvgUtilization
ddpBytesPercent
fullStripeWritesBytesPercent
maxCpuUtilization
maxPossibleBpsUnderCurrentLoad
maxPossibleIopsUnderCurrentLoad
mirrorBytesPercent
otherIOps
raid0BytesPercent
raid1BytesPercent
raid5BytesPercent
raid6BytesPercent
randomIosPercent
readHitResponseTime
readHitResponseTimeStdDev
readIOps
readOps
readPhysicalIOps
readResponseTime
readResponseTimeStdDev
readThroughput
writeHitResponseTime
writeHitResponseTimeStdDev
writeIOps
writeOps
writePhysicalIOps
writeResponseTime
writeResponseTimeStdDev
writeThroughput

Building a new eSeries Performance Check

To have one of the metrics checked, simply select it and put its name, associated uom, thresholds and optional min/max values into another toml file, which you then run with --config from the command line. Abracadabra - your new eSeries performance check is ready to go.

E.g. to check, that mirrorBytesPercent is always near to 100 create this toml-file …

metric = "mirrorBytesPercent"
perfdata-uom-string = "%"
warning = "98"
critical = "90"
comparison = "lt"
max = "100"
min = "0"

… name it mirrorBytesPercent.toml and run this command:

check_eseries_controller statistics [...] ‑‑config=mirrorBytesPercent.toml