The Datadog Terraform provider allows you to interact with the Datadog API through a Terraform configuration. You can manage your Datadog resources, such as Dashboards, Monitors, Logs Configuration, etc, with this configuration.
The Datadog Terraform provider is available through the Terraform Registry.
-
Create a directory to contain the Terraform configuration files, for example:
terraform_config/
-
Create a
main.tf
file in theterraform_config/
directory with the following content:terraform { required_providers { datadog = { source = "DataDog/datadog" } } } # Configure the Datadog provider provider "datadog" { api_key = var.datadog_api_key app_key = var.datadog_app_key }
-
Run
terraform init
. This initializes the directory for use with Terraform and pulls the Datadog provider. -
Create any
.tf
file in theterraform_config/
directory and start creating Datadog resources.
This example demonstrates a monitor.tf
file that creates a live process monitor.
```
# monitor.tf
resource "datadog_monitor" "process_alert_example" {
name = "Process Alert Monitor"
type = "process alert"
message = "Multiple Java processes running on example-tag"
query = "processes('java').over('example-tag').rollup('count').last('10m') > 1"
monitor_thresholds {
critical = 1.0
critical_recovery = 0.0
}
notify_no_data = false
renotify_interval = 60
}
```
Run terraform apply
to create this monitor in your Datadog account.
By installing datadogpy
, you have access to the Dogwrap command line tool, which you can use to wrap any Terraform command and bind it to a custom event.
Install datadogpy
:
pip install datadog
For more information, see the Datadog Python library.
Send a terraform apply
event:
dogwrap -n "terraform apply" -k $DD_API_KEY --submit_mode all --tags="source:terraform" "terraform apply -no-color"
Send a terraform destroy
event:
dogwrap -n "terraform destroy" -k $DD_API_KEY --submit_mode all --tags="source:terraform" "terraform destroy -no-color"
Terraform does not include any metrics.
Terraform does not include any service checks.
Terraform does not include any events.
Need help? Contact Datadog support.