This is a Terraform module for deploying a pre-defined set of OpenTelemetry dashboards in Cloud Observability. Most users will only be interested in a small subset of the dashboards.
- Cloud Observability account and API Key with
member
permissions. - Applicable metrics from your integration sending to your Cloud Observability project.
- Terraform v1.0+
Each resource has an associated module that will create Cloud Observability dashboards to view metrics. Currently, these resources are supported:
- Active Directory DS Receiver Integration (module:
otel-collector-activedirectorydsreceiver-dashboard
) - ActiveMQ (module:
otel-collector-activemqreceiver-dashboard
) - OpenTelemetry Airflow Integration (module:
otel-collector-airflow-dashboard
) - OpenTelemetry / Apache Integration (module:
otel-collector-apachereceiver-dashboard
) - OpenTelemetry ArangoDB Dashboard (module:
otel-collector-arangodb
) - Ceph - Overview (module:
otel-collector-ceph-dashboard
) - Cilium Overview (module:
otel-collector-cilium-overview-dashboard
) - ClickHouse - Overview (module:
otel-collector-clickhouse-dashboard
) - CockroachDB - Overview (module:
otel-collector-cockroachdb-dashboard
) - OpenTelemetry CouchDB Receiver (module:
otel-collector-couchdbreceiver-dashboard
) - K8s OpenTelemetry Collectors (module:
otel-collector-dashboard
) - Dockerstats Metrics (module:
otel-collector-dockerstats-dashboard
) - OpenTelemetry Elasticsearchreceiver Receiver (module:
otel-collector-elasticsearchreceiver-dashboard
) - ETCD v3 - Overview (module:
otel-collector-etcd-dashboard
) - Flink - Overview (module:
otel-collector-flink-dashboard
) - Fluentd Records (module:
otel-collector-fluentd-dashboard
) - Grafana (module:
otel-collector-grafana-dashboard
) - Gunicorn - Overview (module:
otel-collector-gunicorn-dashboard
) - OpenTelemetry Hadoop Dashboard (module:
otel-collector-hadoop-dashboard
) - HAProxy - Overview (module:
otel-collector-haproxy-dashboard
) - OpenTelemetry HBase Dashboard (module:
otel-collector-hbase-dashboard
) - OpenTelemetry / Host (module:
otel-collector-host-dashboard
) - Host Metrics (module:
otel-collector-host-metrics-dashboard
) - Host Metrics (Prometheus) (module:
otel-collector-host-metrics-prom-dashboard
) - OpenTelemetry / Host Metrics / CPU (module:
otel-collector-hostmetrics-cpu-dashboard
) - OpenTelemetry / Host Metrics / Disk (module:
otel-collector-hostmetrics-disk-dashboard
) - OpenTelemetry / Host Metrics / Memory (module:
otel-collector-hostmetrics-memory-dashboard
) - OpenTelemetry / Host Metrics / Paging (module:
otel-collector-hostmetrics-paging-dashboard
) - OpenTelemetry HttpCheck Dashboard (module:
otel-collector-httpcheck-dashboard
) - OpenTelemetry IBMMQ Integration (module:
otel-collector-ibmmq-dashboard
) - OpenTelemetry iisreceiver Integration (module:
otel-collector-iisreceiver-dashboard
) - OpenTelemetry JBoss Wildfly Dashboard (module:
otel-collector-jbosswildfly
) - K8S Kubelet (Prometheus) (module:
otel-collector-k8s-kubelet-prom-dashboard
) - Kubernetes Resources - Pods (Prometheus) (module:
otel-collector-k8s-pod-resources-prom-dashboard
) - OpenTelemetry Collector - Kafka Metrics (module:
otel-collector-kafka-dashboard
) - OpenTelemetry kafkametricsreceiver Integration (module:
otel-collector-kafkametricsreceiver-dashboard
) - OpenTelemetry Kubeletstats Receiver (module:
otel-collector-kubeletstatsreceiver-dashboard
) - Kubernetes Application (module:
otel-collector-kubernetes-application-dashboard
) - OpenTelemetry Collector Comprehensive Kubernetes Dashboard (module:
otel-collector-kubernetes-comprehensive-dashboard
) - OpenTelemetry Collector Comprehensive Kubernetes Dashboard (Prometheus) (module:
otel-collector-kubernetes-comprehensive-dashboard-prometheus
) - ____ (module:
otel-collector-kubernetes-dashboard
) - OpenTelemetry memcachedreceiver Integration (module:
otel-collector-memcachedreceiver-dashboard
) - Minio (module:
otel-collector-minio-dashboard
) - OpenTelemetry mongoatlasreceiver Integration (module:
otel-collector-mongodbatlasreceiver-dashboard
) - MongoDB Summary (module:
otel-collector-mongodbreceiver-dashboard
) - MySQL (module:
otel-collector-mysqlreceiver-dashboard
) - OpenTelemetry Nginx Integration (module:
otel-collector-nginxreceiver-dashboard
) - Hashcorp Nomad Server (module:
otel-collector-nomad-dashboard
) - PostgreSQL (module:
otel-collector-postgresqlreceiver-dashboard
) - OpenTelemetry powerdnsreceiver Integration (module:
otel-collector-powerdns-dashboard
) - RabbitMQ Dashboard (module:
otel-collector-rabbitmqreceiver-dashboard
) - Redis (module:
otel-collector-redisreceiver-dashboard
) - OpenTelemetry riakreceiver Integration (module:
otel-collector-riakreceiver-dashboard
) - SNMP Metrics (module:
otel-collector-snmp-dashboard
) - Solr Overview Dashboard (module:
otel-collector-solr-dashboard
) - OpenTelemetry sqlserverreceiver Integration (module:
otel-collector-sqlserverreceiver-dashboard
) - Squid - Overview (module:
otel-collector-squid-dashboard
) - Apache Tomcat Dashboard (module:
otel-collector-tomcat-dashboard
) - Varnish - Overview (module:
otel-collector-varnish-dashboard
) - Vault - Overview (module:
otel-collector-vault-dashboard
) - OpenTelemetry zookeeperreceiver Integration (module:
otel-collector-zookeeperreceiver-dashboard
) - OpenTelemetry Operator (module:
otel-operator-dashboard
) - OpenTelemetry Target Allocator (module:
otel-target-allocator-dashboard
)
This repo has the following folder structure:
- collector-dashboards: This folder contains standalone, reusable, modules that you can use to create different types of Cloud Observability dashboards for commonly used resources.
- examples: This folder shows examples of different ways to define creation of dashboards.
- root folder: The root folder is an example of how to use the terraform-opentelemetry-dashboards module to create Cloud Observability OpenTelemetry Dashboards. The Terraform Registry requires the root of every repo to contain Terraform code, so we've put one of the examples there. This example is great for learning and experimenting, but for production use, please use the underlying modules in the collector-dashboards folder directly.
To deploy create Cloud Observability dashboards for production using this repo:
-
Ensure account meets module pre-requisites from above.
-
Create a Terraform configuration that pulls module(s) and specifies values of the required variables.
-
Run
terraform init
andterraform apply
with your API Key set in the environment variableLIGHTSTEP_API_KEY
(or the environment variable name you specified in configuration).
This repository uses pre-commit
to format and lint HCL code.
To install:
$ brew install pre-commit
$ pre-commit install
After you add a new dashboard module run make ready
which will fix minor formatting issues, generate the root module files, and generate the document you're reading.