ansible.builtin.datadog_monitor (v2.9.27) — module

Manages Datadog monitors

| "added in version" 2.0 of ansible.builtin"

Authors: Sebastian Kornehl (@skornehl)

preview | supported by community

Install Ansible via pip

Install with pip install ansible==2.9.27

Description

Manages monitors within Datadog.

Options as described on https://docs.datadoghq.com/api/.


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
# Create a metric monitor
- datadog_monitor:
    type: "metric alert"
    name: "Test monitor"
    state: "present"
    query: "datadog.agent.up.over('host:host1').last(2).count_by_status()"
    message: "Host [[host.name]] with IP [[host.ip]] is failing to report to datadog."
    api_key: "9775a026f1ca7d1c6c5af9d94d9595a4"
    app_key: "87ce4a24b5553d2e482ea8a8500e71b8ad4554ff"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
# Deletes a monitor
- datadog_monitor:
    name: "Test monitor"
    state: "absent"
    api_key: "9775a026f1ca7d1c6c5af9d94d9595a4"
    app_key: "87ce4a24b5553d2e482ea8a8500e71b8ad4554ff"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
# Mutes a monitor
- datadog_monitor:
    name: "Test monitor"
    state: "mute"
    silenced: '{"*":None}'
    api_key: "9775a026f1ca7d1c6c5af9d94d9595a4"
    app_key: "87ce4a24b5553d2e482ea8a8500e71b8ad4554ff"
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
# Unmutes a monitor
- datadog_monitor:
    name: "Test monitor"
    state: "unmute"
    api_key: "9775a026f1ca7d1c6c5af9d94d9595a4"
    app_key: "87ce4a24b5553d2e482ea8a8500e71b8ad4554ff"

Inputs

    
id:
    description:
    - The ID of the alert.
    - If set, will be used instead of the name to locate the alert.
    type: str
    version_added: '2.3'
    version_added_collection: ansible.builtin

name:
    description:
    - The name of the alert.
    required: true
    type: str

tags:
    description:
    - A list of tags to associate with your monitor when creating or updating.
    - This can help you categorize and filter monitors.
    type: list
    version_added: '2.2'
    version_added_collection: ansible.builtin

type:
    choices:
    - metric alert
    - service check
    - event alert
    description:
    - The type of the monitor.
    type: str

query:
    description:
    - The monitor query to notify on.
    - Syntax varies depending on what type of monitor you are creating.
    type: str

state:
    choices:
    - present
    - absent
    - mute
    - unmute
    description:
    - The designated state of the monitor.
    required: true
    type: str

locked:
    default: 'no'
    description:
    - Whether changes to this monitor should be restricted to the creator or admins.
    type: bool
    version_added: '2.2'
    version_added_collection: ansible.builtin

api_key:
    description:
    - Your Datadog API key.
    required: true
    type: str

app_key:
    description:
    - Your Datadog app key.
    required: true
    type: str

message:
    description:
    - A message to include with notifications for this monitor.
    - Email notifications can be sent to specific users by using the same '@username'
      notation as events.
    - Monitor message template variables can be accessed by using double square brackets,
      i.e '[[' and ']]'.
    type: str

silenced:
    default: ''
    description:
    - Dictionary of scopes to silence, with timestamps or None.
    - Each scope will be muted until the given POSIX timestamp or forever if the value
      is None.

timeout_h:
    description:
    - The number of hours of the monitor not reporting data before it will automatically
      resolve from a triggered state.
    type: str

thresholds:
    default:
      critical: 1
      ok: 1
      warning: 1
    description:
    - A dictionary of thresholds by status.
    - Only available for service checks and metric alerts.
    - Because each of them can have multiple thresholds, we do not define them directly
      in the query.

notify_audit:
    default: 'no'
    description:
    - Whether tagged users will be notified on changes to this monitor.
    type: bool

new_host_delay:
    description:
    - A positive integer representing the number of seconds to wait before evaluating
      the monitor for new hosts.
    - This gives the host time to fully initialize.
    type: str
    version_added: '2.4'
    version_added_collection: ansible.builtin

notify_no_data:
    default: 'no'
    description:
    - Whether this monitor will notify when data stops reporting.
    type: bool

evaluation_delay:
    description:
    - Time to delay evaluation (in seconds).
    - Effective for sparse values.
    type: str
    version_added: '2.7'
    version_added_collection: ansible.builtin

no_data_timeframe:
    default: 2x timeframe for metric, 2 minutes for service
    description:
    - The number of minutes before a monitor will notify when data stops reporting.
    - Must be at least 2x the monitor timeframe for metric alerts or 2 minutes for service
      checks.
    type: str

renotify_interval:
    description:
    - The number of minutes after the last notification before a monitor will re-notify
      on the current status.
    - It will only re-notify if it is not resolved.
    type: str

escalation_message:
    description:
    - A message to include with a re-notification. Supports the '@username' notification
      we allow elsewhere.
    - Not applicable if I(renotify_interval=None).
    type: str

require_full_window:
    description:
    - Whether this monitor needs a full window of data before it gets evaluated.
    - We highly recommend you set this to False for sparse metrics, otherwise some evaluations
      will be skipped.
    type: bool
    version_added: '2.3'
    version_added_collection: ansible.builtin