Prerequisites
- A Bronto account and API key (how to create one)
- A Kubernetes cluster with
kubectland Helm access - Pods writing to stdout/stderr (collected from
/var/log/podson each node)
Deploy the Collector DaemonSet
Install the Collector with the OpenTelemetry Helm chart. ItslogsCollection preset wires up the filelog receiver and node log mounts; the kubernetesAttributes preset adds pod, namespace, and node metadata and the RBAC it needs:
values.yaml
<REGION> to eu or us. For logs, use x-bronto-collection to identify the cluster; Bronto infers per-workload log datasets from the Kubernetes metadata. Metrics appear in the Metric Explorer and do not belong to that collection or those datasets.
For receiver settings, authentication, and available measurements, see the Collector Contrib Kubelet Stats receiver.
Cluster events
The DaemonSet above collects pod logs only. To also capture Kubernetes events (scheduling, image pulls, OOMKills, evictions), run a second Collector as a single-replica Deployment with thekubernetesEvents preset — it adds the k8sobjects receiver and the RBAC to watch events. Use a Deployment, not the DaemonSet, so events are not duplicated across nodes:
events-values.yaml
k8sobjects receiver (the k8s or contrib distribution). Events arrive in Bronto as log records carrying the event reason, message, involved object, and namespace.
What you will see in Bronto
Open Search for pod logs and the Metric Explorer for kubelet metrics. Kubernetes resource attributes identify the pod, namespace, node, and container.Exponential histograms are not supported. For Sum, Summary, and Histogram metrics, the Metric Explorer provides per-second rate functions.
Troubleshooting
- No logs? Confirm the DaemonSet is running on every node (
kubectl get pods -l app.kubernetes.io/name=opentelemetry-collector) and that nodes expose logs under/var/log/pods. - Missing pod metadata? The
kubernetesAttributespreset creates the required RBAC by default — confirm it is enabled. - Kubelet returns
403for/pods? Grantgeton thenodes/proxysubresource. - For general issues, see OTel Collector troubleshooting.
Alternative: Fluent Bit
Fluent Bit is a long-established way to collect Kubernetes pod logs and a fine choice if your organization already runs it. Deploy it as a DaemonSet via the official Helm chart:fluent-bit.conf
json_lines, not json. The kubernetes filter enriches each log with pod metadata, mirroring the kubernetesAttributes preset. Fluent Bit does not collect cluster events — use the OpenTelemetry Collector for those. See Connect Fluent Bit to Bronto for details.
