Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sparkfabrik/terraform-google-services-monitoring
A simple terraform module for configuring the monitoring of certain services on Google Cloud Platform
https://github.com/sparkfabrik/terraform-google-services-monitoring
Last synced: 23 days ago
JSON representation
A simple terraform module for configuring the monitoring of certain services on Google Cloud Platform
- Host: GitHub
- URL: https://github.com/sparkfabrik/terraform-google-services-monitoring
- Owner: sparkfabrik
- License: gpl-3.0
- Created: 2024-06-10T16:05:31.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2024-10-17T11:16:42.000Z (3 months ago)
- Last Synced: 2024-11-08T13:09:20.462Z (3 months ago)
- Language: HCL
- Size: 28.3 KB
- Stars: 0
- Watchers: 6
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# Terraform GCP Services Monitoring Module
This module creates a set of monitoring alerts for Google Cloud Platform services.
Supported services:
- Cloud SQL
- CPU usage
- Storage usage
- Memory usage## Providers
| Name | Version |
|------|---------|
| [google](#provider\_google) | >= 5.10 |## Requirements
| Name | Version |
|------|---------|
| [terraform](#requirement\_terraform) | >= 1.5 |
| [google](#requirement\_google) | >= 5.10 |## Inputs
| Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:|
| [auto\_close](#input\_auto\_close) | n/a | `string` | `"86400s"` | no |
| [cloud\_sql](#input\_cloud\_sql) | n/a |object({| n/a | yes |
project = optional(string, null)
auto_close = optional(string, null)
notification_channels = optional(list(string), [])
instances = optional(map(object({
cpu_utilization = optional(list(object({
severity = optional(string, "CRITICAL"),
threshold = optional(number, 0.90)
alignment_period = optional(string, "120s")
duration = optional(string, "300s")
})), [
{
severity = "WARNING",
threshold = 0.85,
duration = "1200s",
},
{
severity = "CRITICAL",
threshold = 1,
duration = "300s",
alignment_period = "60s",
}
])
memory_utilization = optional(list(object({
severity = optional(string, "CRITICAL"),
threshold = optional(number, 0.90)
alignment_period = optional(string, "300s")
duration = optional(string, "300s")
})), [
{
severity = "WARNING",
threshold = 0.80,
},
{
severity = "CRITICAL",
threshold = 0.90,
}
])
disk_utilization = optional(list(object({
severity = optional(string, "CRITICAL"),
threshold = optional(number, 0.90)
alignment_period = optional(string, "300s")
duration = optional(string, "600s")
})), [
{
severity = "WARNING",
threshold = 0.85,
},
{
severity = "CRITICAL",
threshold = 0.95,
}
])
})), {})
})
| [notification\_channels](#input\_notification\_channels) | n/a | `list(string)` | `[]` | no |
| [project](#input\_project) | n/a | `string` | `null` | no |## Outputs
| Name | Description |
|------|-------------|
| [cloud\_sql\_cpu\_utilization](#output\_cloud\_sql\_cpu\_utilization) | n/a |
| [cloud\_sql\_disk\_utilization](#output\_cloud\_sql\_disk\_utilization) | n/a |
| [cloud\_sql\_memory\_utilization](#output\_cloud\_sql\_memory\_utilization) | n/a |## Resources
| Name | Type |
|------|------|
| [google_monitoring_alert_policy.cloud_sql_cpu_utilization](https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/monitoring_alert_policy) | resource |
| [google_monitoring_alert_policy.cloud_sql_disk_utilization](https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/monitoring_alert_policy) | resource |
| [google_monitoring_alert_policy.cloud_sql_memory_utilization](https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/monitoring_alert_policy) | resource |## Modules
No modules.