sensu_check – Manage Sensu checks

Synopsis

  • Manage the checks that should be run on a machine by Sensu.

  • Most options do not have a default and will not be added to the check definition unless specified.

  • All defaults except path, state, backup and metric are not managed by this module,

  • they are simply specified for your convenience.

Parameters

Parameter Choices/Defaults Comments
aggregate
boolean
    Choices:
  • no ←
  • yes
Classifies the check as an aggregate check,
making it available via the aggregate API
backup
boolean
    Choices:
  • no ←
  • yes
Create a backup file (if yes), including the timestamp information so
you can get the original file back if you somehow clobbered it incorrectly.
command
- / required
Path to the sensu check to run (not required when state=absent)
custom
-
Default:
{}
A hash/dictionary of custom parameters for mixing to the configuration.
You can't rewrite others module parameters using this
dependencies
-
Default:
[]
Other checks this check depends on, if dependencies fail,
handling of this check will be disabled
handle
boolean
    Choices:
  • no
  • yes ←
Whether the check should be handled or not
handlers
-
Default:
[]
List of handlers to notify when the check fails
high_flap_threshold
-
The high threshold for flap detection
interval
-
Check interval in seconds
low_flap_threshold
-
The low threshold for flap detection
metric
boolean
    Choices:
  • no ←
  • yes
Whether the check is a metric
name
- / required
The name of the check
This is the key that is used to determine whether a check exists
occurrences
-
Default:
1
Number of event occurrences before the handler should take action
path
-
Default:
"/etc/sensu/conf.d/checks.json"
Path to the json file of the check to be added/removed.
Will be created if it does not exist (unless state=absent).
The parent folders need to exist when state=present, otherwise an error will be thrown
publish
boolean
    Choices:
  • no
  • yes ←
Whether the check should be scheduled at all.
You can still issue it via the sensu api
refresh
-
Number of seconds handlers should wait before taking second action
source
-
The check source, used to create a JIT Sensu client for an external resource (e.g. a network switch).
standalone
boolean
    Choices:
  • no ←
  • yes
Whether the check should be scheduled by the sensu client or server
This option obviates the need for specifying the subscribers option
state
-
    Choices:
  • present ←
  • absent
Whether the check should be present or not
subdue_begin
-
When to disable handling of check failures
subdue_end
-
When to enable handling of check failures
subscribers
-
Default:
[]
List of subscribers/channels this check should run for
See sensu_subscribers to subscribe a machine to a channel
timeout
-
Default:
10
Timeout for the check
ttl
-
added in 2.4
Time to live in seconds until the check is considered stale

Examples

# Fetch metrics about the CPU load every 60 seconds,
# the sensu server has a handler called 'relay' which forwards stats to graphite
- name: get cpu metrics
  sensu_check:
    name: cpu_load
    command: /etc/sensu/plugins/system/cpu-mpstat-metrics.rb
    metric: yes
    handlers: relay
    subscribers: common
    interval: 60

# Check whether nginx is running
- name: check nginx process
  sensu_check:
    name: nginx_running
    command: /etc/sensu/plugins/processes/check-procs.rb -f /var/run/nginx.pid
    handlers: default
    subscribers: nginx
    interval: 60

# Stop monitoring the disk capacity.
# Note that the check will still show up in the sensu dashboard,
# to remove it completely you need to issue a DELETE request to the sensu api.
- name: check disk
  sensu_check:
    name: check_disk_capacity
    state: absent

Status

Authors

  • Anders Ingemann (@andsens)

Hint

If you notice any issues in this documentation, you can edit this document to improve it.