- Logs
- Infra Metrics
To send over application-level metrics or APM/traces, you’ll need to add the corresponding language integration to your application as well.
Creating the OTel Helm chart configuration files
To collect logs and metrics from both each node and the cluster itself, we’ll need to deploy two separate OpenTelemetry collectors. One will be deployed as a DaemonSet to collect logs and metrics from each node, and the other will be deployed as a deployment to collect logs and metrics from the cluster itself.Creating a API key secret
Create a new Kubernetes secret with the ingestion API Key from HyperDX. This will be used by the components installed below to securely ingest into your ClickStack OTel collector:Creating the DaemonSet configuration
The DaemonSet will collect logs and metrics from each node in the cluster but won’t collect Kubernetes events or cluster-wide metrics. Download the DaemonSet manifest:- Managed ClickStack
- ClickStack Open Source
k8s_daemonset.yaml
k8s_daemonset.yaml
Creating the deployment configuration
To collect Kubernetes events and cluster-wide metrics, we’ll need to deploy a separate OpenTelemetry collector as a deployment. Download the deployment manifest:- Managed ClickStack
- ClickStack Open Source
k8s_deployment.yaml
k8s_deployment.yaml
Deploying the OpenTelemetry collector
The OpenTelemetry collector can now be deployed in your Kubernetes cluster using the OpenTelemetry Helm Chart. Add the OpenTelemetry Helm repo:copy
Forwarding resource tags to pods (Recommended)
To correlate application-level logs, metrics, and traces with Kubernetes metadata (ex. pod name, namespace, etc.), you’ll want to forward the Kubernetes metadata to your application using theOTEL_RESOURCE_ATTRIBUTES environment variable.
Here’s an example deployment that forwards the Kubernetes metadata to the
application using environment variables: