---
title: "Improved failure reports on Red Hat OpenShift with the event-driven diagnostic operator"
url: https://daily.dev/posts/improved-failure-reports-on-red-hat-openshift-with-the-event-driven-diagnostic-operator-jlfpko67h
source_url: https://developers.redhat.com/articles/2026/08/21/improved-failure-reports-on-red-hat-openshift-with-the-event-driven-diagnostic-operator
type: article
source: "Red Hat Developer"
published: 2026-08-21T13:32:46.885Z
updated: 2026-08-21T13:33:11.055Z
tags: ["golang", "observability", "openshift"]
reading_time: 6
upvotes: 0
comments: 0
language: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Improved failure reports on Red Hat OpenShift with the event-driven diagnostic operator

**[Red Hat Developer](https://daily.dev/sources/rhdev)** · 6 min read · 0 upvotes · 0 comments

## Summary

An open source Kubernetes operator for Red Hat OpenShift automatically captures diagnostic data (must-gather logs) the moment a production incident begins, rather than relying on someone noticing and manually collecting logs afterward. It watches for Kubernetes Warning events on a hub cluster in multi-cluster/Red Hat Advanced Cluster Management setups, matches event messages against regex-based diagnostic rules, identifies the affected spoke cluster, and spins up a non-blocking job to run must-gather and store logs temporarily on RWX storage before automatic cleanup. It complements tools like Prometheus and logging operators by filling the gap right before a failure, and the project is available on GitHub for testing with OpenShift Local.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://developers.redhat.com/articles/2026/08/21/improved-failure-reports-on-red-hat-openshift-with-the-event-driven-diagnostic-operator>

## Questions this post answers

### How does the event-driven diagnostic operator decide which must-gather image to run for a given failure?

It runs the Kubernetes event message through a Go template engine that maps predefined regex patterns to specialized must-gather images. For example, an event message matching the pattern for etcd database corruption triggers the must-gather image configured for ETCD Corruption, while a network CNI failure pattern triggers a different diagnostic job, all defined in the operator's internal/config/template.go rule set.

_Engineers building multi-cluster incident tooling can compare event-driven diagnostic patterns like this on daily.dev._

### How does a Kubernetes operator identify which spoke cluster caused a warning event in a multi-cluster hub setup?

The operator uses a multi-strategy priority parser that first checks the event's InvolvedObject.Kind, then looks for a spoke- namespace prefix, and falls back to regex extraction if neither works. Once identified, it copies that spoke cluster's kubeconfig secret into its own namespace and launches an independent job to run diagnostics against it.

_Teams debugging multi-cluster failures can track approaches like this on daily.dev while designing their own tooling._

## Similar posts on daily.dev

- [Evaluate OpenShift cluster health with the cluster observability operator](https://daily.dev/posts/evaluate-openshift-cluster-health-with-the-cluster-observability-operator-m7mfrek00) · Red Hat Developer · 0 upvotes · 0 comments
- [Introducing the Red Hat OpenShift Virtualization incident must-gather](https://daily.dev/posts/introducing-the-red-hat-openshift-virtualization-incident-must-gather-yjohg2txb) · Red Hat Developer · 0 upvotes · 0 comments
- [Red Hat OpenShift Service on AWS with hosted control planes enables configuration of cluster monitoring operator for additional observability](https://daily.dev/posts/red-hat-openshift-service-on-aws-with-hosted-control-planes-enables-configuration-of-cluster-monitor-nuieexlst) · Red Hat Developer · 0 upvotes · 0 comments

---

Tags: [#golang](https://daily.dev/tags/golang), [#observability](https://daily.dev/tags/observability), [#openshift](https://daily.dev/tags/openshift)

[View this post on daily.dev](https://daily.dev/posts/improved-failure-reports-on-red-hat-openshift-with-the-event-driven-diagnostic-operator-jlfpko67h)
