可观测性即代码:利用Terraform配置Datadog

在我之前的一篇文章《Cloudformation与其背后的“基础设施即代码”》中,我提到了利用Cloudformation实现“基础设施即代码”,

可观测性即代码

“可观测性即代码”(Observability as Code)这一词条第一次出现在ThoughtWorks《技术雷达》19期:

可观测性是运转分布式系统与微服务架构必不可少的一部分。我们依赖不同的系统输出来推断分布式组件的内部状态,比如分布式追踪、日志聚合、系统指标等,进而诊断问题所在,并找到根本原因。
可观测性生态系统的一个重要方面就是监控——可视化以及分析系统的输出——并且在检测到异常时报警。传统的监控报警配置,都是通过图形界面的操作完成。这种方法导致控制面板页的配置不可重复,从而无法持续测试和调整报警,来避免报警疲劳或错过重要的报警,进而偏离组织的最佳实践。我们强烈建议使用代码来配置可观测性生态系统,称为可观测性即代码,并且采取基础设施即代码的方式搭建其基础设施。
因此,在选择提供可观测性的工具时,要选择支持通过代码版本控制进行配置,并能通过基础设施持续交付流水线执行 API 或命令行的产品。

实战:利用Terraform配置Datadog

resource "datadog_monitor" "high_cpu_usage_of_docker" {
  name               = "High CPU Usage of Docker"
  type               = "metric alert"
  message            = <
Datadog Monitor

迁移:代码化原有手动配置的Datadog

通过一个d2tf工具可以实现将已有的Datadog配置转换成Terraform代码

Github仓库:https://github.com/geekeren/terraform-datadog-demos

你可能感兴趣的:(可观测性即代码:利用Terraform配置Datadog)