Merge pull request #1866 from Jimdo/monitor_thresholds

Allow Datadog metric alerts to define multiple thresholds
This commit is contained in:
René Moser 2016-03-30 12:09:12 +02:00
commit ab656bb7dd

View file

@ -95,7 +95,7 @@ options:
required: false
default: False
thresholds:
description: ["A dictionary of thresholds by status. Because service checks can have multiple thresholds, we don't define them directly in the query."]
description: ["A dictionary of thresholds by status. This option is only available for service checks and metric alerts. Because each of them can have multiple thresholds, we don't define them directly in the query."]
required: false
default: {'ok': 1, 'critical': 1, 'warning': 1}
'''
@ -152,7 +152,7 @@ def main():
renotify_interval=dict(required=False, default=None),
escalation_message=dict(required=False, default=None),
notify_audit=dict(required=False, default=False, type='bool'),
thresholds=dict(required=False, type='dict', default={'ok': 1, 'critical': 1, 'warning': 1}),
thresholds=dict(required=False, type='dict', default=None),
)
)
@ -228,6 +228,8 @@ def install_monitor(module):
}
if module.params['type'] == "service check":
options["thresholds"] = module.params['thresholds'] or {'ok': 1, 'critical': 1, 'warning': 1}
if module.params['type'] == "metric alert" and module.params['thresholds'] is not None:
options["thresholds"] = module.params['thresholds']
monitor = _get_monitor(module)