Skip to content

Instantly share code, notes, and snippets.

@jmherbst
Created November 4, 2014 18:38
Show Gist options
  • Save jmherbst/b63fae1d9cb23d638591 to your computer and use it in GitHub Desktop.
Save jmherbst/b63fae1d9cb23d638591 to your computer and use it in GitHub Desktop.
{
"handlers": {
"pagerduty": {
"type": "pipe",
"mutator": "preserve_pagerduty_alert",
"severities": [
"critical",
"ok"
],
}
}
}
{
"mutators": {
"preserve_pagerduty_alert": {
"command": "/etc/sensu/mutators/preserve_pagerduty_alert.rb"
}
}
}
#!/usr/bin/env ruby
require 'rubygems'
require 'json'
# Read event data
event = JSON.parse(STDIN.read)
# Modify event action so that certain check alerts do not get resolved automatically via API
if event['action'] == 'resolve' && event['check']['no_auto_resolve'] == true
event['action'] = 'do_not_resolve'
event.merge!('mutated' => true, 'why_mutated' => "Do not resolve alerts!!")
end
# Output mutated event data to STDOUT for handler to play with
puts event.to_json
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment