salt.modules.datadog_api

An execution module that interacts with the Datadog API

The following parameters are required for all functions.

api_key
The datadog API key
app_key
The datadog application key

Full argument reference is available on the Datadog API reference page https://docs.datadoghq.com/api/

salt.modules.datadog_api.cancel_downtime(api_key=None, app_key=None, scope=None, id=None)

Cancel a downtime by id or by scope.

CLI Example:

salt-call datadog.cancel_downtime scope='host:app01' \
                                  api_key='0123456789' \
                                  app_key='9876543210'`

Arguments - Either scope or id is required.

Parameters:
  • id -- The downtime ID
  • scope -- The downtime scope
salt.modules.datadog_api.post_event(api_key=None, app_key=None, title=None, text=None, date_happened=None, priority=None, host=None, tags=None, alert_type=None, aggregation_key=None, source_type_name=None)

Post an event to the Datadog stream.

CLI Example

salt-call datadog.post_event api_key='0123456789' \
                             app_key='9876543210' \
                             title='Salt Highstate' \
                             text="Salt highstate was run on $(salt-call grains.get id)" \
                             tags='["service:salt", "event:highstate"]'

Required arguments

Parameters:
  • title -- The event title. Limited to 100 characters.
  • text -- The body of the event. Limited to 4000 characters. The text supports markdown.

Optional arguments

Parameters:
  • date_happened -- POSIX timestamp of the event.
  • priority -- The priority of the event ('normal' or 'low').
  • host -- Host name to associate with the event.
  • tags -- A list of tags to apply to the event.
  • alert_type -- "error", "warning", "info" or "success".
  • aggregation_key -- An arbitrary string to use for aggregation, max length of 100 characters.
  • source_type_name -- The type of event being posted.
salt.modules.datadog_api.schedule_downtime(scope, api_key=None, app_key=None, monitor_id=None, start=None, end=None, message=None, recurrence=None, timezone=None, test=False)

Schedule downtime for a scope of monitors.

CLI Example:

salt-call datadog.schedule_downtime 'host:app2' \
                                    stop=$(date --date='30 minutes' +%s) \
                                    app_key='0123456789' \
                                    api_key='9876543210'

Optional arguments

Parameters:
  • monitor_id -- The ID of the monitor
  • start -- Start time in seconds since the epoch
  • end -- End time in seconds since the epoch
  • message -- A message to send in a notification for this downtime
  • recurrence -- Repeat this downtime periodically
  • timezone -- Specify the timezone