No commit activity in last 3 years
No release in over 3 years
This plugin provides facilities for monitoring disk usage
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Runtime

 Project Readme

Sensu plugin for monitoring disk usage

A sensu plugin to monitor disk usage on Linux.

The plugin generates multiple OK/WARN/CRIT/UNKNOWN events via the sensu client socket (https://sensuapp.org/docs/latest/clients#client-socket-input) so that you do not miss state changes when monitoring multiple volumes.

Usage

The plugin accepts the following command line options:

Usage: check-disk-usage.rb (options)
    -c, --config <PATH>              Optional configuration file (default: ./disk-usage.json)
        --crit-inodes <PERCENT>      Critical if PERCENT or more of inodes used
        --crit-space <PERCENT>       Critical if PERCENT or more of disk space used
        --fstype <TYPE>              Comma separated list of file system type(s) (default: all)
        --handlers <HANDLERS>        Comma separated list of handlers
        --ignore-fstype <TYPE>       Comma separated list of file system type(s) to ignore
        --ignore-mount <MOUNTPOINT>  Comma separated list of mount point(s) to ignore
        --ignore-mount-regex <MOUNTPOINT>
                                     Comma separated list of mount point(s) to ignore (regex)
        --mount <MOUNTPOINT>         Comma separated list of mount point(s) (default: all)
        --mount-regex <MOUNTPOINT>   Comma separated list of mount point(s) (regex)
    -w, --warn                       Warn instead of throwing a critical failure
        --warn-inodes <PERCENT>      Warn if PERCENT or more of inodes used
        --warn-space <PERCENT>       Warn if PERCENT or more of disk space used

Use the --handlers command line option to specify which handlers you want to use for the generated events.

By default, the warning and critical parameters are global to all mountpoints. However, each mountpoint can override the defaults in an optional JSON configuration file which must be placed in the same location as the plugin.

JSON example:

{
  "mountpoints": {
    "/": {
      "warn_space": 70,
      "crit_space": 85,
      "warn_inodes": 65,
      "crit_inodes": 75
    },
    ..
  }
}

Ideally, you would manage the configuration file via your favourite cfgmgmt tool (e.g. Puppet).

Author

Matteo Cerutti - matteo.cerutti@hotmail.co.uk