Documentation

sensu_check - Manage Sensu checks

New in version 2.0.

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
    Choices:
  • yes
  • no ←
Classifies the check as an aggregate check,
making it available via the aggregate API
backup
    Choices:
  • yes
  • no ←
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
(added in 2.1)
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
    Choices:
  • yes ←
  • no
Whether the check should be handled or not
handlers Default:
[]
List of handlers to notify when the check fails
high_flap_threshold Default:
None
The high threshold for flap detection
interval Default:
None
Check interval in seconds
low_flap_threshold Default:
None
The low threshold for flap detection
metric
    Choices:
  • yes
  • no ←
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
    Choices:
  • yes ←
  • no
Whether the check should be scheduled at all.
You can still issue it via the sensu api
refresh Default:
None
Number of seconds handlers should wait before taking second action
source
(added in 2.1)
Default:
None
The check source, used to create a JIT Sensu client for an external resource (e.g. a network switch).
standalone
    Choices:
  • yes
  • no ←
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 Default:
None
When to disable handling of check failures
subdue_end Default:
None
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)
Default:
None
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

This module is flagged as preview which means that it is not guaranteed to have a backwards compatible interface.

Author

  • Anders Ingemann (@andsens)

Hint

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