Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/lightstep/terraform-opentelemetry-dashboards
OpenTelemetry Integration Dashboards for Terraform
https://github.com/lightstep/terraform-opentelemetry-dashboards
Last synced: 8 days ago
JSON representation
OpenTelemetry Integration Dashboards for Terraform
- Host: GitHub
- URL: https://github.com/lightstep/terraform-opentelemetry-dashboards
- Owner: lightstep
- Created: 2022-04-20T21:50:26.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-02-14T00:38:46.000Z (9 months ago)
- Last Synced: 2024-02-14T01:28:43.738Z (9 months ago)
- Language: HCL
- Size: 840 KB
- Stars: 7
- Watchers: 14
- Forks: 9
- Open Issues: 10
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Terraform Module for Cloud Observability OpenTelemetry Dashboards
**:warning:** You are viewing a **beta version** of the official
module to create and manage OpenTelemetry Dashboards inside Cloud Observability.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.
## Pre-requisites
* Cloud Observability account and API Key with `member` permissions.
* Applicable metrics from your integration sending to your Cloud Observability project.
* Terraform v1.0+## Supported Resources
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`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-activedirectorydsreceiver-dashboard))
* __ActiveMQ__ (module: [`otel-collector-activemqreceiver-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-activemqreceiver-dashboard))
* __Airflow Integration__ (module: [`otel-collector-airflow-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-airflow-dashboard))
* __Apache Integration__ (module: [`otel-collector-apachereceiver-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-apachereceiver-dashboard))
* __ArangoDB__ (module: [`otel-collector-arangodb`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-arangodb))
* __Ceph - Overview__ (module: [`otel-collector-ceph-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-ceph-dashboard))
* __Cilium Overview__ (module: [`otel-collector-cilium-overview-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-cilium-overview-dashboard))
* __ClickHouse - Overview__ (module: [`otel-collector-clickhouse-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-clickhouse-dashboard))
* __CockroachDB - Overview__ (module: [`otel-collector-cockroachdb-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-cockroachdb-dashboard))
* __CouchDB Receiver__ (module: [`otel-collector-couchdbreceiver-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-couchdbreceiver-dashboard))
* __K8s OpenTelemetry Collectors__ (module: [`otel-collector-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-dashboard))
* __Dockerstats Metrics__ (module: [`otel-collector-dockerstats-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-dockerstats-dashboard))
* __Elasticsearchreceiver Receiver__ (module: [`otel-collector-elasticsearchreceiver-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-elasticsearchreceiver-dashboard))
* __ETCD v3 - Overview__ (module: [`otel-collector-etcd-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-etcd-dashboard))
* __Flink - Overview__ (module: [`otel-collector-flink-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-flink-dashboard))
* __Fluentd Records__ (module: [`otel-collector-fluentd-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-fluentd-dashboard))
* __Grafana__ (module: [`otel-collector-grafana-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-grafana-dashboard))
* __Gunicorn - Overview__ (module: [`otel-collector-gunicorn-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-gunicorn-dashboard))
* __Hadoop__ (module: [`otel-collector-hadoop-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-hadoop-dashboard))
* __HAProxy - Overview__ (module: [`otel-collector-haproxy-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-haproxy-dashboard))
* __HBase__ (module: [`otel-collector-hbase-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-hbase-dashboard))
* __Host__ (module: [`otel-collector-host-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-host-dashboard))
* __Host Metrics__ (module: [`otel-collector-host-metrics-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-host-metrics-dashboard))
* __Host Metrics (Prometheus)__ (module: [`otel-collector-host-metrics-prom-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-host-metrics-prom-dashboard))
* __Host Metrics / CPU__ (module: [`otel-collector-hostmetrics-cpu-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-hostmetrics-cpu-dashboard))
* __Host Metrics / Disk__ (module: [`otel-collector-hostmetrics-disk-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-hostmetrics-disk-dashboard))
* __Host Metrics / Memory__ (module: [`otel-collector-hostmetrics-memory-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-hostmetrics-memory-dashboard))
* __Host Metrics / Paging__ (module: [`otel-collector-hostmetrics-paging-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-hostmetrics-paging-dashboard))
* __HttpCheck__ (module: [`otel-collector-httpcheck-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-httpcheck-dashboard))
* __IBMMQ Integration__ (module: [`otel-collector-ibmmq-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-ibmmq-dashboard))
* __iisreceiver Integration__ (module: [`otel-collector-iisreceiver-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-iisreceiver-dashboard))
* __JBoss Wildfly__ (module: [`otel-collector-jbosswildfly`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-jbosswildfly))
* __K8S Kubelet (Prometheus)__ (module: [`otel-collector-k8s-kubelet-prom-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-k8s-kubelet-prom-dashboard))
* __Kubernetes Resources - Pods (Prometheus)__ (module: [`otel-collector-k8s-pod-resources-prom-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-k8s-pod-resources-prom-dashboard))
* __Collector - Kafka Metrics__ (module: [`otel-collector-kafka-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-kafka-dashboard))
* __kafkametricsreceiver Integration__ (module: [`otel-collector-kafkametricsreceiver-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-kafkametricsreceiver-dashboard))
* __Kubeletstats Receiver__ (module: [`otel-collector-kubeletstatsreceiver-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-kubeletstatsreceiver-dashboard))
* __Kubernetes Application__ (module: [`otel-collector-kubernetes-application-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-kubernetes-application-dashboard))
* __Kubernetes Comprehensive__ (module: [`otel-collector-kubernetes-comprehensive-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-kubernetes-comprehensive-dashboard))
* __Kubernetes Comprehensive (Prometheus)__ (module: [`otel-collector-kubernetes-comprehensive-dashboard-prometheus`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-kubernetes-comprehensive-dashboard-prometheus))
* ____ (module: [`otel-collector-kubernetes-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-kubernetes-dashboard))
* __memcachedreceiver Integration__ (module: [`otel-collector-memcachedreceiver-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-memcachedreceiver-dashboard))
* __Minio__ (module: [`otel-collector-minio-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-minio-dashboard))
* __mongoatlasreceiver Integration__ (module: [`otel-collector-mongodbatlasreceiver-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-mongodbatlasreceiver-dashboard))
* __MongoDB Summary__ (module: [`otel-collector-mongodbreceiver-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-mongodbreceiver-dashboard))
* __MySQL__ (module: [`otel-collector-mysqlreceiver-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-mysqlreceiver-dashboard))
* __Nginx Integration__ (module: [`otel-collector-nginxreceiver-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-nginxreceiver-dashboard))
* __Hashcorp Nomad Server__ (module: [`otel-collector-nomad-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-nomad-dashboard))
* __PostgreSQL__ (module: [`otel-collector-postgresqlreceiver-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-postgresqlreceiver-dashboard))
* __powerdnsreceiver Integration__ (module: [`otel-collector-powerdns-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-powerdns-dashboard))
* __RabbitMQ__ (module: [`otel-collector-rabbitmqreceiver-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-rabbitmqreceiver-dashboard))
* __Redis__ (module: [`otel-collector-redisreceiver-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-redisreceiver-dashboard))
* __riakreceiver Integration__ (module: [`otel-collector-riakreceiver-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-riakreceiver-dashboard))
* __Hardware Sentry - Host__ (module: [`otel-collector-sentryhost-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-sentryhost-dashboard))
* __Hardware Sentry - Observability & Sustainability__ (module: [`otel-collector-sentryobservability-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-sentryobservability-dashboard))
* __Hardware Sentry - Site__ (module: [`otel-collector-sentrysite-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-sentrysite-dashboard))
* __SNMP Metrics__ (module: [`otel-collector-snmp-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-snmp-dashboard))
* __Solr Overview__ (module: [`otel-collector-solr-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-solr-dashboard))
* __sqlserverreceiver Integration__ (module: [`otel-collector-sqlserverreceiver-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-sqlserverreceiver-dashboard))
* __Squid - Overview__ (module: [`otel-collector-squid-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-squid-dashboard))
* __Apache Tomcat__ (module: [`otel-collector-tomcat-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-tomcat-dashboard))
* __Varnish - Overview__ (module: [`otel-collector-varnish-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-varnish-dashboard))
* __Vault - Overview__ (module: [`otel-collector-vault-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-vault-dashboard))
* __zookeeperreceiver Integration__ (module: [`otel-collector-zookeeperreceiver-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-collector-zookeeperreceiver-dashboard))
* __OTel Operator__ (module: [`otel-operator-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-operator-dashboard))
* __OTel Target Allocator__ (module: [`otel-target-allocator-dashboard`](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards/otel-target-allocator-dashboard))## How to Use This Module
This repo has the following folder structure:
* [collector-dashboards](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/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](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/examples): This folder shows examples of different ways to define creation of dashboards.
* [root folder](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main): The root folder is *an example* of how to use the [terraform-opentelemetry-dashboards](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main)
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](https://github.com/lightstep/terraform-opentelemetry-dashboards/tree/main/collector-dashboards) 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` and `terraform apply` with your API Key set in the environment variable `LIGHTSTEP_API_KEY` (or the environment variable name you specified in configuration).
## Development
This repository uses `pre-commit` and `tflint` to format and lint HCL code.
To install:
```
$ brew install tflint
$ brew install pre-commit
$ pre-commit install
```
## Contributing New DashboardsAfter 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.