{"id":31077,"date":"2026-04-14T12:43:50","date_gmt":"2026-04-14T07:13:50","guid":{"rendered":"https:\/\/opstree.com\/blog\/?p=31077"},"modified":"2026-04-14T12:46:29","modified_gmt":"2026-04-14T07:16:29","slug":"kubernetes-events-monitoring-using-open-telemetry-and-loki","status":"publish","type":"post","link":"https:\/\/opstree.com\/blog\/2026\/04\/14\/kubernetes-events-monitoring-using-open-telemetry-and-loki\/","title":{"rendered":"Kubernetes Events Monitoring using Open Telemetry And Loki"},"content":{"rendered":"<div style=\"background: #f8fafc; padding: 18px; border: 1px solid #e2e8f0; border-radius: 6px; font-family: Inter, Arial, sans-serif; margin: 20px 0;\">\n<h3 style=\"margin-top: 0; font-size: 18px;\">Table of Contents<\/h3>\n<ol style=\"margin: 0; padding-left: 18px; line-height: 1.7; font-size: 14px;\">\n<li><a style=\"text-decoration: none; color: #2563eb;\" href=\"#introduction\">Introduction<\/a><\/li>\n<li><a style=\"text-decoration: none; color: #2563eb;\" href=\"#why-k8s-events-monitoring\">Why We Need Kubernetes Events Monitoring (and Why via Open Telemetry)<\/a><\/li>\n<li><a style=\"text-decoration: none; color: #2563eb;\" href=\"#why-use-otel\">Why Use Open Telemetry for Events?<\/a><\/li>\n<li><a style=\"text-decoration: none; color: #2563eb;\" href=\"#what-are-k8s-events\">What Are Kubernetes Events?<\/a><\/li>\n<li><a style=\"text-decoration: none; color: #2563eb;\" href=\"#architecture-flow-diagram\">Architecture Flow Diagram<\/a><\/li>\n<li><a style=\"text-decoration: none; color: #2563eb;\" href=\"#setup-helm\">Setup: Deploy Kubernetes Events Monitoring Using Helm<\/a><\/li>\n<li><a style=\"text-decoration: none; color: #2563eb;\" href=\"#conclusion\">Conclusion<\/a><\/li>\n<\/ol>\n<\/div>\n<h2><b><span id=\"introduction\" data-contrast=\"auto\">Introduction<\/span><\/b><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/h2>\n<ul>\n<li><span data-contrast=\"auto\"><a href=\"https:\/\/opstree.com\/blog\/2026\/03\/10\/docker-compose-to-kubernetes-without-helm-using-kanvas\/\" target=\"_blank\" rel=\"noopener\">Kubernetes clusters<\/a> are highly dynamic, and issues can appear at any time\u00a0from pod scheduling failures to container crashes.\u00a0<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/li>\n<li><span data-contrast=\"auto\">Kubernetes events\u00a0provide\u00a0real-time insights into such problems,\u00a0but managing and\u00a0analysing\u00a0these events at scale can be challenging.<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/li>\n<li><span data-contrast=\"auto\">In this blog, we will learn how to\u00a0monitor\u00a0Kubernetes events using\u00a0Open Telemetry\u00a0Collector and visualize them in Grafana via Loki.<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/li>\n<\/ul>\n<p><!--more--><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-31082 size-large\" src=\"https:\/\/opstree.com\/blog\/wp-content\/uploads\/2026\/04\/page_1_img_1-1024x683.jpeg\" alt=\"\" width=\"840\" height=\"560\" srcset=\"https:\/\/opstree.com\/blog\/wp-content\/uploads\/2026\/04\/page_1_img_1-1024x683.jpeg 1024w, https:\/\/opstree.com\/blog\/wp-content\/uploads\/2026\/04\/page_1_img_1-300x200.jpeg 300w, https:\/\/opstree.com\/blog\/wp-content\/uploads\/2026\/04\/page_1_img_1-768x512.jpeg 768w, https:\/\/opstree.com\/blog\/wp-content\/uploads\/2026\/04\/page_1_img_1-1200x800.jpeg 1200w, https:\/\/opstree.com\/blog\/wp-content\/uploads\/2026\/04\/page_1_img_1.jpeg 1536w\" sizes=\"(max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><\/p>\n<h2><b><span id=\"why-k8s-events-monitoring\" data-contrast=\"auto\">Why We Need Kubernetes Events Monitoring (and Why via\u00a0Open Telemetry)<\/span><\/b><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/h2>\n<p><strong>1. Kubernetes events provide the earliest signals when something goes wrong in a cluster, such as:\u00a0<\/strong><\/p>\n<ul>\n<li><span data-contrast=\"auto\">scheduling failures<\/span><span data-ccp-props=\"{&quot;335551550&quot;:1,&quot;335551620&quot;:1}\">\u00a0<\/span><\/li>\n<li><span data-contrast=\"auto\">image pull errors<\/span><span data-ccp-props=\"{&quot;335551550&quot;:1,&quot;335551620&quot;:1}\">\u00a0<\/span><\/li>\n<li><span data-contrast=\"auto\">CrashLoopBackOff<\/span><span data-ccp-props=\"{&quot;335551550&quot;:1,&quot;335551620&quot;:1}\">\u00a0<\/span><\/li>\n<\/ul>\n<p><strong>2. They help us quickly understand\u00a0<\/strong><\/p>\n<ul>\n<li><span data-contrast=\"auto\">What happened\u00a0\u00a0<\/span><span data-ccp-props=\"{&quot;335551550&quot;:1,&quot;335551620&quot;:1}\">\u00a0<\/span><\/li>\n<li><span data-contrast=\"auto\">\u00a0When it happened\u00a0\u00a0<\/span><span data-ccp-props=\"{&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559685&quot;:720}\">\u00a0<\/span><\/li>\n<li><span data-contrast=\"auto\">\u00a0Which Kubernetes object was affected<\/span><span data-ccp-props=\"{&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559685&quot;:720}\">\u00a0<\/span><\/li>\n<\/ul>\n<h2><b><span id=\"why-use-otel\" data-contrast=\"auto\">Why Use Open Telemetry for Events?<\/span><\/b><\/h2>\n<ul>\n<li aria-setsize=\"-1\" data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"4\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">Kubernetes events are notifications that record significant changes and state transitions within the cluster such as pod creation, failures, or terminations<\/span><span data-contrast=\"auto\">.<\/span><span data-ccp-props=\"{&quot;335551550&quot;:1,&quot;335551620&quot;:1}\">\u00a0<\/span><\/li>\n<\/ul>\n<p><span data-contrast=\"auto\">The complete flow diagram for this process is shown below.<\/span><span data-ccp-props=\"{&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559685&quot;:0}\">\u00a0<\/span><\/p>\n<h2><b><span id=\"what-are-k8s-events\" data-contrast=\"auto\">What Are Kubernetes Events?<\/span><\/b><span data-ccp-props=\"{&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559685&quot;:0}\">\u00a0<\/span><\/h2>\n<ul>\n<li aria-setsize=\"-1\" data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"40\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">Kubernetes events are notifications that record significant changes and states within the cluster such as pod creation, failures, or terminations.\u00a0<\/span><span data-contrast=\"auto\">\u00a0<\/span><span data-ccp-props=\"{&quot;335551550&quot;:1,&quot;335551620&quot;:1}\">\u00a0<\/span><\/li>\n<\/ul>\n<h5><b><span data-contrast=\"auto\">Common event types:<\/span><\/b><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;201341983&quot;:0,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:202,&quot;335559740&quot;:276}\">\u00a0<\/span><\/h5>\n<ul>\n<li><span data-contrast=\"auto\">PodCreated<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/li>\n<li><span data-contrast=\"auto\">FailedScheduling<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/li>\n<li><span data-contrast=\"auto\">ImagePullBackOff<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/li>\n<li><span data-contrast=\"auto\">CrashLoopBackOff<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/li>\n<li><span data-contrast=\"auto\">Probe failures<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/li>\n<\/ul>\n<h2><b><span id=\"architecture-flow-diagram\" data-contrast=\"auto\">Architecture Flow Diagram :\u00a0<\/span><\/b><\/h2>\n<p><span data-contrast=\"auto\">The following diagram shows how Kubernetes events flow from the cluster to Grafana using\u00a0<a href=\"https:\/\/opstree.com\/blog\/2025\/06\/10\/monitor-open-telemetry-collector-performance\/\" target=\"_blank\" rel=\"noopener\">Open Telemetry<\/a>\u00a0and Loki.<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-31081\" src=\"https:\/\/opstree.com\/blog\/wp-content\/uploads\/2026\/04\/page_2_img_1.jpeg\" alt=\"\" width=\"840\" height=\"716\" srcset=\"https:\/\/opstree.com\/blog\/wp-content\/uploads\/2026\/04\/page_2_img_1.jpeg 1024w, https:\/\/opstree.com\/blog\/wp-content\/uploads\/2026\/04\/page_2_img_1-300x256.jpeg 300w, https:\/\/opstree.com\/blog\/wp-content\/uploads\/2026\/04\/page_2_img_1-768x655.jpeg 768w\" sizes=\"(max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><\/p>\n<p><span class=\"NormalTextRun SCXW162418922 BCX0\">The following flow explains how Kubernetes events move from the cluster to Grafana using\u00a0<\/span><span class=\"NormalTextRun SCXW162418922 BCX0\">OpenTelemetry<\/span><span class=\"NormalTextRun SCXW162418922 BCX0\">\u00a0and Loki.<\/span><\/p>\n<ol>\n<li aria-setsize=\"-1\" data-leveltext=\"%1.\" data-font=\"Aptos\" data-listid=\"17\" data-list-defn-props=\"{&quot;335552541&quot;:0,&quot;335559685&quot;:1080,&quot;335559991&quot;:360,&quot;469769242&quot;:[65533,0],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;%1.&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}\" data-aria-posinset=\"1\" data-aria-level=\"1\"><b><span data-contrast=\"auto\">Kubernetes creates events<\/span><\/b><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/li>\n<\/ol>\n<p><span data-contrast=\"auto\">Kubernetes generates events for every important activity happening in the cluster (like pod start, pod failure, scheduling issues, image pull errors, etc.)<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559685&quot;:0,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/p>\n<ol start=\"2\">\n<li><b><span data-contrast=\"auto\">\u00a0OTel\u00a0Collector watches these events<\/span><\/b><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559685&quot;:0,&quot;335559738&quot;:0,&quot;335559739&quot;:0}\">\u00a0<\/span><\/li>\n<\/ol>\n<p><span data-contrast=\"auto\">The\u00a0Open Telemetry\u00a0Collector continuously watches all Kubernetes events in real time.<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559685&quot;:0,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/p>\n<ol start=\"3\">\n<li><b><span data-contrast=\"auto\">\u00a0Collector receives events through receivers<\/span><\/b><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:0,&quot;335559739&quot;:0}\">\u00a0<\/span><\/li>\n<\/ol>\n<ul>\n<li><b><span data-contrast=\"none\">k8s_events receiver<\/span><\/b><span data-contrast=\"auto\">\u00a0\u2192 reads all basic events<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/li>\n<li><b><span data-contrast=\"none\">k8sobjects receiver<\/span><\/b><span data-contrast=\"auto\">\u00a0\u2192 watches events from the events API<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/li>\n<\/ul>\n<ol start=\"4\">\n<li><b><span data-contrast=\"auto\">Events are processed<\/span><\/b><\/li>\n<\/ol>\n<p><span data-contrast=\"auto\">The collector processes incoming events using processors<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/p>\n<ul>\n<li><b><span data-contrast=\"auto\">Batch processor<\/span><\/b><span data-contrast=\"auto\">\u00a0\u2013 Groups events before exporting<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/li>\n<li><b><span data-contrast=\"auto\">Resource processor<\/span><\/b><span data-contrast=\"auto\">\u00a0\u2013 Adds metadata such as cluster name and service name<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/li>\n<\/ul>\n<ol start=\"5\">\n<li><b><span data-contrast=\"auto\">Collector exports events to Loki<\/span><\/b><\/li>\n<\/ol>\n<p><span data-contrast=\"auto\">The processed events are then pushed to Loki as log entries using the\u00a0<a href=\"https:\/\/opstree.com\/blog\/2023\/05\/30\/basic-logging-setup-of-loki-grafana\/\" target=\"_blank\" rel=\"noopener\">Loki\u00a0exporter<\/a>.<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559685&quot;:0,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/p>\n<ol start=\"6\">\n<li><b><span data-contrast=\"auto\">Loki stores these events<\/span><\/b><\/li>\n<\/ol>\n<p><span data-contrast=\"auto\">Loki stores all the incoming events like log data.<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559685&quot;:0,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/p>\n<ol start=\"7\">\n<li><b><span data-contrast=\"auto\">Grafana shows the events<\/span><\/b><\/li>\n<\/ol>\n<p><span data-contrast=\"auto\">You can query these stored events in Grafana and visualize them using simple log\u00a0queries.<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559685&quot;:0,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/p>\n<p><b><span data-contrast=\"auto\">(for example: {service=&#8221;k8s-events&#8221;})<\/span><\/b><\/p>\n<h2>Prerequisite<\/h2>\n<p><span data-contrast=\"auto\">Before starting the setup, ensure you have:<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/p>\n<ul>\n<li><span data-contrast=\"auto\">A running Kubernetes cluster<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/li>\n<li><span data-contrast=\"auto\">Helm installed<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/li>\n<li><span data-contrast=\"auto\">Loki and Grafana already deployed<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/li>\n<li><span data-contrast=\"auto\">Cluster access with sufficient permissions<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/li>\n<\/ul>\n<h2><b><span id=\"setup-helm\" data-contrast=\"auto\">Setup:\u00a0\u00a0Deploy Kubernetes Events Monitoring Using Helm<\/span><\/b><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559685&quot;:0,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/h2>\n<h4><b><span data-contrast=\"auto\">STEP-1<\/span><\/b><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559685&quot;:0,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/h4>\n<h5><b><span data-contrast=\"none\">Prepare Helm Chart<\/span><\/b><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/h5>\n<p><span class=\"TextRun SCXW55048189 BCX0\" lang=\"EN-GB\" xml:lang=\"EN-GB\" data-contrast=\"auto\"><span class=\"NormalTextRun SpellingErrorV2Themed SCXW55048189 BCX0\">Chart.yml<\/span><span class=\"NormalTextRun SCXW55048189 BCX0\">.<\/span><\/span><span class=\"EOP Selected SCXW55048189 BCX0\" data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559685&quot;:0,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/p>\n<pre style=\"background: #0f172a; color: #e5e7eb; padding: 16px; border-radius: 8px; font-size: 13px; line-height: 1.6; overflow-x: auto; max-width: 100%;\">apiVersion: v2 \r\n\r\nname: otel-k8s-events \r\n\r\ndescription: OpenTelemetry Collector - Kubernetes Events exporter (Helm chart) \r\n\r\ntype: application \r\n\r\nversion: 0.1.0 \r\n\r\nappVersion: \"0.1.0\" \r\n\r\nkeywords: \r\n\r\n  - opentelemetry \r\n\r\n  - k8s \r\n\r\n  - events<\/pre>\n<p><span data-contrast=\"auto\">This file defines:<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559685&quot;:0,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/p>\n<ul>\n<li><span data-contrast=\"auto\">Chart name<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/li>\n<li><span data-contrast=\"auto\">Chart version<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/li>\n<li><span data-contrast=\"auto\">Application version<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/li>\n<li><span data-contrast=\"auto\">Description and keywords<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/li>\n<\/ul>\n<p><strong><span class=\"TextRun SCXW172426786 BCX0\" lang=\"EN-GB\" xml:lang=\"EN-GB\" data-contrast=\"auto\"><span class=\"NormalTextRun SpellingErrorV2Themed SCXW172426786 BCX0\">values.yaml<\/span><\/span><span class=\"EOP Selected SCXW172426786 BCX0\" data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/strong><\/p>\n<pre style=\"background: #0f172a; color: #e5e7eb; padding: 16px; border-radius: 8px; font-size: 13px; line-height: 1.6; overflow-x: auto; max-width: 100%;\">otelCollector:\r\n\r\n  image:\r\n    repository: otel\/opentelemetry-collector-contrib\r\n    tag: 0.123.0\r\n\r\n  clusterName: \"cluster-name\"\r\n\r\n  resources:\r\n    requests:\r\n      cpu: 50m\r\n      memory: 128Mi\r\n    limits:\r\n      cpu: 200m\r\n      memory: 256Mi\r\n\r\nexporters:\r\n  loki:\r\n    endpoint: \"loki-end-point-url\"\r\n\r\nloadbalancerCollectorP0Sa:\r\n  serviceAccount:\r\n    annotations: {}\r\n<\/pre>\n<p><span data-contrast=\"auto\">This file allows customization of:<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559685&quot;:0,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/p>\n<ul>\n<li><span data-contrast=\"auto\">OpenTelemetry\u00a0Collector image and version<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/li>\n<li><span data-contrast=\"auto\">Cluster name for tagging events<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/li>\n<li><span data-contrast=\"auto\">Loki endpoint for exporting events<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/li>\n<li><span data-contrast=\"auto\">CPU and memory requests\/limits<\/span><\/li>\n<\/ul>\n<h4><b><span data-contrast=\"auto\">STEP-2<\/span><\/b><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/h4>\n<h5><b><span data-contrast=\"none\">Install the Helm Chart<\/span><\/b><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559685&quot;:0,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/h5>\n<p><span data-contrast=\"auto\">Create a namespace and install the chart<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559685&quot;:0,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/p>\n<pre style=\"background: #0f172a; color: #e5e7eb; padding: 16px; border-radius: 8px; font-size: 13px; line-height: 1.6; overflow-x: auto; max-width: 100%;\"><span class=\"TextRun SCXW248382433 BCX0\" lang=\"EN-GB\" xml:lang=\"EN-GB\" data-contrast=\"auto\"><span class=\"NormalTextRun SCXW248382433 BCX0\">helm install otel-k8s-<\/span><span class=\"NormalTextRun SCXW248382433 BCX0\">events<\/span><span class=\"NormalTextRun SCXW248382433 BCX0\">.<\/span><span class=\"NormalTextRun SCXW248382433 BCX0\">\u00a0<\/span><span class=\"NormalTextRun SCXW248382433 BCX0\">\u00a0<\/span><span class=\"NormalTextRun SCXW248382433 BCX0\">-<\/span><span class=\"NormalTextRun SCXW248382433 BCX0\">n\u00a0<\/span><span class=\"NormalTextRun SpellingErrorV2Themed SCXW248382433 BCX0\">ot<\/span><span class=\"NormalTextRun SpellingErrorV2Themed SCXW248382433 BCX0\">el<\/span><span class=\"NormalTextRun SCXW248382433 BCX0\">-events --create-namespace<\/span><\/span><span class=\"EOP Selected SCXW248382433 BCX0\" data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240,&quot;335572071&quot;:4,&quot;335572072&quot;:5,&quot;335572073&quot;:0,&quot;335572075&quot;:4,&quot;335572076&quot;:5,&quot;335572077&quot;:0,&quot;335572079&quot;:4,&quot;335572080&quot;:5,&quot;335572081&quot;:0,&quot;335572083&quot;:4,&quot;335572084&quot;:5,&quot;335572085&quot;:0,&quot;469789798&quot;:&quot;single&quot;,&quot;469789802&quot;:&quot;single&quot;,&quot;469789806&quot;:&quot;single&quot;,&quot;469789810&quot;:&quot;single&quot;}\">\u00a0<\/span>\r\n<\/pre>\n<p><span class=\"TextRun SCXW151238108 BCX0\" lang=\"EN-GB\" xml:lang=\"EN-GB\" data-contrast=\"auto\"><span class=\"NormalTextRun SCXW151238108 BCX0\">For future updates:<\/span><\/span><span class=\"EOP Selected SCXW151238108 BCX0\" data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/p>\n<pre style=\"background: #0f172a; color: #e5e7eb; padding: 16px; border-radius: 8px; font-size: 13px; line-height: 1.6; overflow-x: auto; max-width: 100%;\"><span class=\"NormalTextRun SCXW166131939 BCX0\">helm upgrade otel-k8s-<\/span><span class=\"NormalTextRun ContextualSpellingAndGrammarErrorV2Themed SCXW166131939 BCX0\">events\u00a0<\/span><span class=\"NormalTextRun ContextualSpellingAndGrammarErrorV2Themed SCXW166131939 BCX0\">\u00a0<\/span><span class=\"NormalTextRun ContextualSpellingAndGrammarErrorV2Themed SCXW166131939 BCX0\">.<\/span><span class=\"NormalTextRun SCXW166131939 BCX0\">\u00a0<\/span><span class=\"NormalTextRun SCXW166131939 BCX0\">\u00a0-n\u00a0<\/span><span class=\"NormalTextRun SpellingErrorV2Themed SCXW166131939 BCX0\">otel<\/span><span class=\"NormalTextRun SCXW166131939 BCX0\">-events -f values.yaml<\/span>\r\n<\/pre>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-31080 size-large\" src=\"https:\/\/opstree.com\/blog\/wp-content\/uploads\/2026\/04\/page_8_img_1-1024x179.png\" alt=\"\" width=\"840\" height=\"147\" srcset=\"https:\/\/opstree.com\/blog\/wp-content\/uploads\/2026\/04\/page_8_img_1-1024x179.png 1024w, https:\/\/opstree.com\/blog\/wp-content\/uploads\/2026\/04\/page_8_img_1-300x52.png 300w, https:\/\/opstree.com\/blog\/wp-content\/uploads\/2026\/04\/page_8_img_1-768x134.png 768w, https:\/\/opstree.com\/blog\/wp-content\/uploads\/2026\/04\/page_8_img_1-1200x209.png 1200w, https:\/\/opstree.com\/blog\/wp-content\/uploads\/2026\/04\/page_8_img_1.png 1302w\" sizes=\"(max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><\/p>\n<p><span class=\"TextRun SCXW71366582 BCX0\" lang=\"EN-GB\" xml:lang=\"EN-GB\" data-contrast=\"none\"><span class=\"NormalTextRun SCXW71366582 BCX0\">(Make sure you run these commands from inside the chart directory)<\/span><\/span><span class=\"EOP Selected SCXW71366582 BCX0\" data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/p>\n<h4><b><span data-contrast=\"none\">STEP-3<\/span><\/b><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/h4>\n<h5><b><span data-contrast=\"none\">Verify Collector Pod.<\/span><\/b><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/h5>\n<p><span data-contrast=\"auto\">Check whether the collector pod is running<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-31079 size-large\" src=\"https:\/\/opstree.com\/blog\/wp-content\/uploads\/2026\/04\/page_9_img_1-1024x70.png\" alt=\"\" width=\"840\" height=\"57\" srcset=\"https:\/\/opstree.com\/blog\/wp-content\/uploads\/2026\/04\/page_9_img_1-1024x70.png 1024w, https:\/\/opstree.com\/blog\/wp-content\/uploads\/2026\/04\/page_9_img_1-300x20.png 300w, https:\/\/opstree.com\/blog\/wp-content\/uploads\/2026\/04\/page_9_img_1-768x52.png 768w, https:\/\/opstree.com\/blog\/wp-content\/uploads\/2026\/04\/page_9_img_1.png 1099w\" sizes=\"(max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><\/p>\n<h4><b><span data-contrast=\"auto\">STEP: 4<\/span><\/b><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/h4>\n<p><b><span data-contrast=\"none\">Check Collector Logs<\/span><\/b><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">You should see Kubernetes event data in the logs,\u00a0<\/span><b><span data-contrast=\"auto\">for example<\/span><\/b><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/p>\n<pre style=\"background: #0f172a; color: #e5e7eb; padding: 16px; border-radius: 8px; font-size: 13px; line-height: 1.6; overflow-x: auto; max-width: 100%;\"><span class=\"TextRun SCXW7662668 BCX0\" lang=\"EN-GB\" xml:lang=\"EN-GB\" data-contrast=\"auto\"><span class=\"NormalTextRun SpellingErrorV2Themed SCXW7662668 BCX0\">kubectl<\/span><span class=\"NormalTextRun SCXW7662668 BCX0\">\u00a0logs -n\u00a0<\/span><span class=\"NormalTextRun SpellingErrorV2Themed SCXW7662668 BCX0\">otel<\/span><span class=\"NormalTextRun SCXW7662668 BCX0\">-events &lt;collector-pod&gt;<\/span><\/span><span class=\"EOP Selected SCXW7662668 BCX0\" data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240,&quot;335572071&quot;:4,&quot;335572072&quot;:5,&quot;335572073&quot;:0,&quot;335572075&quot;:4,&quot;335572076&quot;:5,&quot;335572077&quot;:0,&quot;335572079&quot;:4,&quot;335572080&quot;:5,&quot;335572081&quot;:0,&quot;335572083&quot;:4,&quot;335572084&quot;:5,&quot;335572085&quot;:0,&quot;469789798&quot;:&quot;single&quot;,&quot;469789802&quot;:&quot;single&quot;,&quot;469789806&quot;:&quot;single&quot;,&quot;469789810&quot;:&quot;single&quot;}\">\u00a0<\/span><\/pre>\n<p><span class=\"TextRun SCXW107876160 BCX0\" lang=\"EN-GB\" xml:lang=\"EN-GB\" data-contrast=\"auto\"><span class=\"NormalTextRun SCXW107876160 BCX0\">You should see event logs like:<\/span><\/span><span class=\"EOP Selected SCXW107876160 BCX0\" data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/p>\n<pre style=\"background: #0f172a; color: #e5e7eb; padding: 16px; border-radius: 8px; font-size: 13px; line-height: 1.6; overflow-x: auto; max-width: 100%;\">{\r\n  \"name\": \"gke-opstree-o11y-default-pool-d57e4c76-h2cz\",\r\n  \"status\": {\r\n    \"conditions\": [\r\n      { \"type\": \"MemoryPressure\", \"status\": \"False\" },\r\n      { \"type\": \"DiskPressure\", \"status\": \"False\" },\r\n      { \"type\": \"PIDPressure\", \"status\": \"False\" },\r\n      { \"type\": \"Ready\", \"status\": \"True\" }\r\n    ]\r\n  }\r\n}\r\n<\/pre>\n<h4><b><span data-contrast=\"auto\">STEP: 5\u00a0\u00a0<\/span><\/b><b><span data-contrast=\"auto\">\u00a0\u00a0<\/span><\/b><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/h4>\n<h5><b><\/b><b><span data-contrast=\"none\">\u00a0Verify Events in Grafana<\/span><\/b><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/h5>\n<ol>\n<li><b><span data-contrast=\"auto\">Open Grafana<\/span><\/b><span data-contrast=\"auto\">\u00a0and navigate to the\u00a0<\/span><b><span data-contrast=\"auto\">Explore<\/span><\/b><span data-contrast=\"auto\">\u00a0section.<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/li>\n<li><span data-contrast=\"auto\">In the\u00a0<\/span><b><span data-contrast=\"auto\">query bar<\/span><\/b><span data-contrast=\"auto\">, enter the following Loki query:<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/li>\n<\/ol>\n<pre style=\"background: #0f172a; color: #e5e7eb; padding: 16px; border-radius: 8px; font-size: 13px; line-height: 1.6; overflow-x: auto; max-width: 100%;\"><span class=\"TextRun Highlight SCXW26308913 BCX0\" lang=\"EN-GB\" xml:lang=\"EN-GB\" data-contrast=\"auto\"><span class=\"NormalTextRun Subscript SCXW26308913 BCX0\" data-fontsize=\"16\">{service=\"k8s-events\"}<\/span><\/span><span class=\"EOP Selected SCXW26308913 BCX0\" data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:2,&quot;335551620&quot;:2,&quot;335559685&quot;:0,&quot;335559738&quot;:240,&quot;335559739&quot;:240,&quot;335572071&quot;:4,&quot;335572072&quot;:5,&quot;335572073&quot;:0,&quot;335572075&quot;:4,&quot;335572076&quot;:5,&quot;335572077&quot;:0,&quot;335572079&quot;:4,&quot;335572080&quot;:5,&quot;335572081&quot;:0,&quot;335572083&quot;:4,&quot;335572084&quot;:5,&quot;335572085&quot;:0,&quot;469789798&quot;:&quot;single&quot;,&quot;469789802&quot;:&quot;single&quot;,&quot;469789806&quot;:&quot;single&quot;,&quot;469789810&quot;:&quot;single&quot;}\">\u00a0<\/span>\r\n<\/pre>\n<p><span class=\"TextRun SCXW21786171 BCX0\" lang=\"EN-GB\" xml:lang=\"EN-GB\" data-contrast=\"auto\"><span class=\"NormalTextRun SCXW21786171 BCX0\">3.\u00a0<\/span><span class=\"NormalTextRun SCXW21786171 BCX0\">If your setup is correct, you should see Kubernetes events\u00a0<\/span><span class=\"NormalTextRun SCXW21786171 BCX0\">\u00a0\u00a0\u00a0\u00a0<\/span><span class=\"NormalTextRun SCXW21786171 BCX0\">appearing as logs<\/span><span class=\"NormalTextRun SCXW21786171 BCX0\">\u00a0like\u00a0<\/span><span class=\"NormalTextRun SCXW21786171 BCX0\">this.<\/span><\/span><span class=\"EOP Selected SCXW21786171 BCX0\" data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559685&quot;:0,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-31078 size-large\" src=\"https:\/\/opstree.com\/blog\/wp-content\/uploads\/2026\/04\/page_10_img_1-1024x1019.png\" alt=\"\" width=\"840\" height=\"836\" srcset=\"https:\/\/opstree.com\/blog\/wp-content\/uploads\/2026\/04\/page_10_img_1-1024x1019.png 1024w, https:\/\/opstree.com\/blog\/wp-content\/uploads\/2026\/04\/page_10_img_1-300x300.png 300w, https:\/\/opstree.com\/blog\/wp-content\/uploads\/2026\/04\/page_10_img_1-150x150.png 150w, https:\/\/opstree.com\/blog\/wp-content\/uploads\/2026\/04\/page_10_img_1-768x764.png 768w, https:\/\/opstree.com\/blog\/wp-content\/uploads\/2026\/04\/page_10_img_1-1200x1194.png 1200w, https:\/\/opstree.com\/blog\/wp-content\/uploads\/2026\/04\/page_10_img_1.png 1300w\" sizes=\"(max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><\/p>\n<h2><b><span id=\"conclusion\" data-contrast=\"auto\">Conclusion<\/span><\/b><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559685&quot;:0,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/h2>\n<p><span data-contrast=\"auto\">Kubernetes events\u00a0provide\u00a0critical insights into cluster behaviour, but they are often short-lived and difficult to\u00a0analyse.<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">By using\u00a0OpenTelemetry\u00a0Collector with Loki and Grafana, we can:<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/p>\n<ul>\n<li><span data-contrast=\"auto\">Collect Kubernetes events centrally<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/li>\n<li><span data-contrast=\"auto\">Retain them for longer durations<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/li>\n<li><span data-contrast=\"auto\">Easily search and\u00a0analyse\u00a0cluster issues<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/li>\n<\/ul>\n<p><span data-contrast=\"auto\">This approach reduces MTTR and significantly improves <a href=\"https:\/\/opstree.com\/solutions\/observability-and-system-reliability\/\" target=\"_blank\" rel=\"noopener\">Kubernetes observability<\/a>.<\/span><span data-ccp-props=\"{&quot;134233117&quot;:false,&quot;134233118&quot;:false,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559738&quot;:240,&quot;335559739&quot;:240}\">\u00a0<\/span><\/p>\n<h2 data-main-rotation=\"0\">Related Searches<\/h2>\n<ul>\n<li><a href=\"https:\/\/opstree.com\/blog\/2026\/01\/30\/container-scanning-tools-devsecops\/\" target=\"_blank\" rel=\"noopener\">Container Scanning Tools: Why They Matter In DevSecOps And How To Choose The Best One<\/a><\/li>\n<li><a href=\"https:\/\/opstree.com\/blog\/2026\/03\/05\/what-is-devsecops\/\">What Is DevSecOps? A Complete Guide To Secure Software Delivery<\/a><\/li>\n<li><a href=\"https:\/\/opstree.com\/blog\/2021\/10\/11\/buildpiper-the-ideal-kubernetes-microservices-application-delivery-platform-for-your-business\/\" target=\"_blank\" rel=\"noopener\">BuildPiper- The ideal Kubernetes &amp; Microservices Application Delivery Platform for your Business!<\/a><\/li>\n<\/ul>\n<h2>Related Solutions<\/h2>\n<ul>\n<li><a href=\"https:\/\/buildpiper.io\/kubeops-kubernetes-management\/\" target=\"_blank\" rel=\"noopener\">kubernetes cluster management tools<\/a><\/li>\n<li><a href=\"https:\/\/opstree.com\/services\/cloud-engineering-modernisation-migrations\/\" target=\"_blank\" rel=\"noopener\">Cloud Engineering Services<\/a><\/li>\n<li><a href=\"https:\/\/opstree.com\/aws-consulting-services\/\" target=\"_blank\" rel=\"noopener\">AWS Consulting Services<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Table of Contents Introduction Why We Need Kubernetes Events Monitoring (and Why via Open Telemetry) Why Use Open Telemetry for Events? What Are Kubernetes Events? Architecture Flow Diagram Setup: Deploy Kubernetes Events Monitoring Using Helm Conclusion Introduction\u00a0 Kubernetes clusters are highly dynamic, and issues can appear at any time\u00a0from pod scheduling failures to container crashes.\u00a0\u00a0 &hellip; <a href=\"https:\/\/opstree.com\/blog\/2026\/04\/14\/kubernetes-events-monitoring-using-open-telemetry-and-loki\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Kubernetes Events Monitoring using Open Telemetry And Loki&#8221;<\/span><\/a><\/p>\n","protected":false},"author":241065127,"featured_media":31088,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_coblocks_attr":"","_coblocks_dimensions":"","_coblocks_responsive_height":"","_coblocks_accordion_ie_support":"","jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","enabled":false},"version":2}},"categories":[768739351],"tags":[305571273,506380345,502915258,16279507,768739545,343865],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/opstree.com\/blog\/wp-content\/uploads\/2026\/04\/Untitled-design-16.png","jetpack_likes_enabled":true,"jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/pfDBOm-85f","jetpack-related-posts":[],"_links":{"self":[{"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/posts\/31077"}],"collection":[{"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/users\/241065127"}],"replies":[{"embeddable":true,"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/comments?post=31077"}],"version-history":[{"count":6,"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/posts\/31077\/revisions"}],"predecessor-version":[{"id":31091,"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/posts\/31077\/revisions\/31091"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/media\/31088"}],"wp:attachment":[{"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/media?parent=31077"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/categories?post=31077"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/opstree.com\/blog\/wp-json\/wp\/v2\/tags?post=31077"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}