Add Datadog doco.

This commit is contained in:
Otto Jongerius 2016-02-08 20:00:00 +11:00 committed by James Nugent
parent 237e257f37
commit c8bd02abee
5 changed files with 163 additions and 0 deletions

View File

@ -14,6 +14,7 @@ body.layout-azurerm,
body.layout-cloudflare,
body.layout-cloudstack,
body.layout-consul,
body.layout-datadog,
body.layout-digitalocean,
body.layout-dme,
body.layout-dnsimple,

View File

@ -0,0 +1,38 @@
---
layout: "datadog"
page_title: "Provider: Datadog"
sidebar_current: "docs-datadog-index"
description: |-
The Datadog provider is used to interact with the resources supported by Datadog. The provider needs to be configured with the proper credentials before it can be used.
---
# Datadog Provider
The [Datadog](https://www.datadoghq.com) provider is used to interact with the
resources supported by Datadog. The provider needs to be configured
with the proper credentials before it can be used.
Use the navigation to the left to read about the available resources.
## Example Usage
```
# Configure the Datadog provider
provider "datadog" {
api_key = "${var.datadog_api_key}"
app_key = "${var.datadog_app_key}"
}
# Create a new monitor
resource "datadog_monitor" "default" {
...
}
```
## Argument Reference
The following arguments are supported:
* `api_key` - (Required) Datadog API key
* `app_key` - (Required) Datadog APP key

View File

@ -0,0 +1,94 @@
---
layout: "datadog"
page_title: "Datadog: datadog_monitor"
sidebar_current: "docs-datadog-resource-monitor"
description: |-
Provides a Datadog monitor resource. This can be used to create and manage monitors.
---
# datadog\_monitor
Provides a Datadog monitor resource. This can be used to create and manage Datadog monitors.
## Example Usage
```
# Create a new Datadog monitor
resource "datadog_monitor" "foo" {
name = "Name for monitor foo"
type = "Metric alert"
message = "Monitor triggered. Notify: @hipchat-channel"
escalation_message = "Escalation message @pagerduty"
query = "avg(last_1h):avg:aws.ec2.cpu{environment:foo,host:foo} by {host} > 2"
thresholds {
ok = 0
warning = 1
critical = 2
}
notify_no_data = false
renotify_interval = 60
notify_audit = false
timeout_h = 60
include_tags = true
silenced {
"*" = 0
}
}
```
## Argument Reference
The following arguments are supported:
* `type` - (Required) The type of the monitor, chosen from:
* `metric alert`
* `service check`
* `event alert`
* `query alert`
* `name` - (Required) Name of Datadog monitor
* `query` - (Required) The monitor query to notify on with syntax varying depending on what type of monitor
you are creating. See [API Reference](http://docs.datadoghq.com/api) for options.
* `message` - (Required) 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.
* `escalation_message` - (Optional) A message to include with a re-notification. Supports the '@username'
notification allowed elsewhere.
* `thresholds` - (Required) Thresholds by threshold type:
* `ok`
* `warning`
* `critical`
* `notify_no_data` (Optional) A boolean indicating whether this monitor will notify when data stops reporting. Defaults
to false.
* `no_data_timeframe` (Optional) 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. Default: 2x timeframe for
metric alerts, 2 minutes for service checks.
* `renotify_interval` (Optional) 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's not resolved.
* `notify_audit` (Optional) A boolean indicating whether tagged users will be notified on changes to this monitor.
Defaults to false.
* `timeout_h` (Optional) The number of hours of the monitor not reporting data before it will automatically resolve
from a triggered state. Defaults to false.
* `include_tags` (Optional) A boolean indicating whether notifications from this monitor will automatically insert its
triggering tags into the title. Defaults to true.
* `silenced` (Optional) Each scope will be muted until the given POSIX timestamp or forever if the value is 0.
To mute the alert completely:
silenced {
'*' = 0
}
To mute role:db for a short time:
silenced {
'role:db' = 1412798116
}
## Attributes Reference
The following attributes are exported:
* `id` - ID of the Datadog monitor

View File

@ -0,0 +1,26 @@
<% wrap_layout :inner do %>
<% content_for :sidebar do %>
<div class="docs-sidebar hidden-print affix-top" role="complementary">
<ul class="nav docs-sidenav">
<li<%= sidebar_current("docs-home") %>>
<a href="/docs/providers/index.html">&laquo; Documentation Home</a>
</li>
<li<%= sidebar_current("docs-datadog-index") %>>
<a href="/docs/providers/datadog/index.html">Datadog Provider</a>
</li>
<li<%= sidebar_current(/^docs-datadog-resource/) %>>
<a href="#">Resources</a>
<ul class="nav nav-visible">
<li<%= sidebar_current("docs-datadog-resource-monitor") %>>
<a href="/docs/providers/datadog/r/monitor.html">datadog_monitor</a>
</li>
</ul>
</li>
</ul>
</div>
<% end %>
<%= yield %>
<% end %>

View File

@ -158,6 +158,10 @@
<a href="/docs/providers/consul/index.html">Consul</a>
</li>
<li<%= sidebar_current("docs-providers-datadog") %>>
<a href="/docs/providers/datadog/index.html">Datadog</a>
</li>
<li<%= sidebar_current("docs-providers-do") %>>
<a href="/docs/providers/do/index.html">DigitalOcean</a>
</li>