Dash0 acquires Polar Signals
Dash0's Terragrunt dashboards provide comprehensive visibility into your Terraform/OpenTofu infrastructure. Gain insights and streamline management.
Terraform is a widely-used Infrastructure as Code (IaC) tool that allows users to define, provision, and manage cloud resources across multiple platforms using a declarative language called HashiCorp Configuration Language (HCL).
OpenTofu is an open-source fork of Terraform and now part of the Linux Foundation. It maintains backward compatibility with Terraform, allowing for seamless transitions and supporting existing workflows.
Terragrunt is a thin wrapper around Terraform/OpenTofu, that provides additional features to improve infrastructure management. It promotes DRY (Don't Repeat Yourself) configurations, simplifies remote state management, and offers versioning capabilities for Terraform/OpenTofu modules.
For more information, visit the Terragrunt Project Page.
Common use cases for Terragrunt in Dash0 include:
What Terragrunt/Terraform/OpenTofu commands are running and in which folders:
What steps Terragrunt did internally (e.g., file system scanning, config parsing, auto-init, hook execution, etc) to process the command:
What TF modules and providers, and at which versions, were used:
Currently Terragrunt only supports sending telemetry data to a locally running OpenTelemetry collector. At Dash0 we run Atlantis on an EC2 instance with a locally running OpenTelemetry collector that collects all Terragrunt metrics, logs and traces.
For local experiments we recommend running the OpenTelemetry collector in a Docker container.
Please download this OpenTelemetry collector YAML configuration first and save it locally as config-blog-post.yaml
Then replace <DASH0_OTLP_ENDPOINT> and DASH0_AUTH_TOKEN in config-blog-post.yaml:
DASH0_OTLP_ENDPOINT={{endpoint_otlp_grpc}}DASH0_AUTH_TOKEN={{token}}Then you can start the collector using the following docker command:
docker run -p 4317:4317 -p 4318:4318 -v $(pwd)/config-blog-post.yaml:/etc/otelcol-contrib/config.yaml ghcr.io/open-telemetry/opentelemetry-collector-releases/opentelemetry-collector-contrib:0.114.0In your Terragrunt project directory, set the following environment variables. Once you run terragrunt plan / apply commands, the telemetry data will be sent to the OpenTelemetry collector.
export TERRAGRUNT_TELEMETRY_TRACE_EXPORTER=http
export TERRAGRUNT_TELEMETRY_TRACE_EXPORTER_HTTP_ENDPOINT=localhost:4318
export TERRAGRUNT_TELEMETRY_TRACE_EXPORTER_INSECURE_ENDPOINT=true
export TERRAGRUNT_TELEMETRY_METRIC_EXPORTER=grpcHttp
export TERRAGRUNT_TELEMETRY_METRIC_EXPORTER_INSECURE_ENDPOINT=true
export OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4317For more information, please refer to Terragrunt's documentation on OpenTelemetry.