Note
This plugin is part of the community.general collection (version 2.0.1).
To install it use: ansible-galaxy collection install community.general
.
To use it in a playbook, specify: community.general.datadog_downtime
.
New in version 2.0.0: of community.general
The below requirements are needed on the host that executes this module.
Parameter | Choices/Defaults | Comments |
---|---|---|
api_host string | Default: "https://api.datadoghq.com" | The URL to the Datadog API. This value can also be set with the DATADOG_HOST environment variable. |
api_key string / required | Your Datadog API key. | |
app_key string / required | Your Datadog app key. | |
downtime_message string | A message to include with notifications for this downtime. Email notifications can be sent to specific users by using the same "@username" notation as events. | |
end integer | POSIX timestamp to end the downtime. If not provided, the downtime is in effect until you cancel it. | |
id integer | The identifier of the downtime. If empty, a new downtime gets created, otherwise it is either updated or deleted depending of the state .To keep your playbook idempotent, you should save the identifier in a file and read it in a lookup. | |
monitor_id integer | The ID of the monitor to mute. If not provided, the downtime applies to all monitors. | |
monitor_tags list / elements=string | A list of monitor tags to which the downtime applies. The resulting downtime applies to monitors that match ALL provided monitor tags. | |
rrule string | The RRULE standard for defining recurring events.For example, to have a recurring event on the first day of each month, select a type of rrule and set the FREQ to MONTHLY and BYMONTHDAY to 1 .Most common rrule options from the iCalendar Spec are supported. Attributes specifying the duration in RRULE are not supported (e.g. DTSTART , DTEND , DURATION ). | |
scope list / elements=string | A list of scopes to which the downtime applies. The resulting downtime applies to sources that matches ALL provided scopes. | |
start integer | POSIX timestamp to start the downtime. If not provided, the downtime starts the moment it is created. | |
state string |
| The designated state of the downtime. |
timezone string | The timezone for the downtime. |
- name: Create a downtime register: downtime_var community.general.datadog_downtime: state: present monitor_tags: - "foo:bar" downtime_message: "Downtime for foo:bar" scope: "test" api_key: "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" app_key: "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" # Lookup the id in the file and ignore errors if the file doesn't exits, so downtime gets created id: "{{ lookup('file', inventory_hostname ~ '_downtime_id.txt', errors='ignore') }}" - name: Save downtime id to file for later updates and idempotence delegate_to: localhost copy: content: "{{ downtime.downtime.id }}" dest: "{{ inventory_hostname ~ '_downtime_id.txt' }}"
Common return values are documented here, the following are the fields unique to this module:
Key | Returned | Description |
---|---|---|
downtime dictionary | always | The downtime returned by the API. Sample: {'active': True, 'canceled': None, 'creator_id': 1445416, 'disabled': False, 'downtime_type': 2, 'end': None, 'id': 1055751000, 'message': 'Downtime for foo:bar', 'monitor_id': None, 'monitor_tags': ['foo:bar'], 'parent_id': None, 'recurrence': None, 'scope': ['test'], 'start': 1607015009, 'timezone': 'UTC', 'updater_id': None} |
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/community/general/datadog_downtime_module.html