Built-in Mutators

ENTERPRISE: Built-in mutators are available for Sensu Enterprise users only.

Sensu Core ships with a set of built-in mutators for transforming event data into JSON, Ruby Hash, or extracting check output. Sensu Enterprise comes with additional mutators, enabling third-party integrations, and providing event handler authors with a set of supported tools with well defined specifications.

Enterprise mutators

The output_format mutator

Sensu Enterprise simplifies the process of gaining insightful metrics from complex distributed systems. The output_format enterprise mutator makes it possible to mutate collected metrics in various formats from disparate data sources, into a proprietary intermediate format that has been optimized for portability.

The output_format enterprise mutator extracts metrics from check result output. Users can specify an output format per check, enabling the use of various check plugins (Nagios plugins, etc.) and data sources. The output_format mutator currently supports several popular specifications:

Example output_format filter configuration

The following is an example of how to configure an output format for a metric collection check, one that is making use of a Nagios plugin. This example check not only monitors NTP but also collects several metrics. Note the multiple event handlers: one for notifications (pagerduty), another for metric storage (graphite).

{
  "checks": {
    "ntp": {
      "command": "/usr/lib/nagios/plugins/check_ntp -H time.nrc.ca",
      "subscribers": [
        "production"
      ],
      "interval": 20,
      "output_format": "nagios_perfdata",
      "handlers": [
        "pagerduty",
        "graphite"
      ]
    }
  }
}

Definition attributes

output_format
description A metric output format (to be parsed).
required true
type String
allowed values influxdb_line, graphite_plaintext, nagios_perfdata, opentsdb, wavefront, metrics20_wire, wizardvan_json
default graphite_plaintext
example
"output_format": "graphite_plaintext"