sensu_handler - Manages Sensu handler configuration

New in version 2.4.

Synopsis

Options

parameter required default choices comments
command
no
The handler command to be executed.
The event data is passed to the process via STDIN.
NOTE: the command attribute is only required for Pipe handlers (i.e. handlers configured with "type": "pipe").
filter
no
The Sensu event filter (name) to use when filtering events for the handler.
filters
no
An array of Sensu event filters (names) to use when filtering events for the handler.
Each array item must be a string.
handle_flapping
no
If events in the flapping state should be handled.
handle_silenced
no
If events matching one or more silence entries should be handled.
handlers
yes
An array of Sensu event handlers (names) to use for events using the handler set.
Each array item must be a string.
NOTE: the handlers attribute is only required for handler sets (i.e. handlers configured with "type": "set").
mutator
no
The Sensu event mutator (name) to use to mutate event data for the handler.
name
yes
A unique name for the handler. The name cannot contain special characters or spaces.
pipe
no
The pipe definition scope, used to configure the Sensu transport pipe.
NOTE: the pipe attribute is only required for Transport handlers (i.e. handlers configured with "type": "transport").
severities
no
  • warning
  • critical
  • unknown
An array of check result severities the handler will handle.
NOTE: event resolution bypasses this filtering.
socket
no
The socket definition scope, used to configure the TCP/UDP handler socket.
NOTE: the socket attribute is only required for TCP/UDP handlers (i.e. handlers configured with "type": "tcp" or "type": "udp").
state
no present
  • present
  • absent
Whether the handler should be present or not
timeout
no 10
The handler execution duration timeout in seconds (hard stop).
Only used by pipe and tcp handler types.
type
yes
  • pipe
  • tcp
  • udp
  • transport
  • set
The handler type

Examples

# Configure a handler that sends event data as STDIN (pipe)
- name: Configure IRC Sensu handler
  sensu_handler:
    name: "irc_handler"
    type: "pipe"
    command: "/usr/local/bin/notify-irc.sh"
    severities:
      - "ok"
      - "critical"
      - "warning"
      - "unknown"
    timeout: 15
  notify:
    - Restart sensu-client
    - Restart sensu-server

# Delete a handler
- name: Delete IRC Sensu handler
  sensu_handler:
    name: "irc_handler"
    state: "absent"

# Example of a TCP handler
- name: Configure TCP Sensu handler
  sensu_handler:
    name: "tcp_handler"
    type: "tcp"
    timeout: 30
    socket:
      host: "10.0.1.99"
      port: 4444
  register: handler
  notify:
    - Restart sensu-client
    - Restart sensu-server

- name: Secure Sensu handler configuration file
  file:
    path: "{{ handler['file'] }}"
    owner: "sensu"
    group: "sensu"
    mode: "0600"

Return Values

Common return values are documented here Return Values, the following are the fields unique to this module:

name description returned type sample
config
Effective handler configuration, when state is present
success dict {'type': 'pipe', 'command': '/usr/local/bin/notify-irc.sh', 'name': 'irc'}
file
Path to the handler configuration file
success string /etc/sensu/conf.d/handlers/irc.json
name
Name of the handler
success string irc

Notes

Note

  • Check mode is supported

Status

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

For help in developing on modules, should you be so inclined, please read Community Information & Contributing, Testing Ansible and Developing Modules.

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.4/sensu_handler_module.html