Skip to main content

Documentation Index

Fetch the complete documentation index at: https://dorguai.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

Synopsis

dorgu health [flags]

Description

Display a comprehensive cluster health summary by querying the Kubernetes API directly. The output includes node status, resource saturation (CPU and memory), control plane component health, active incidents, and pending remediations. When the Dorgu Operator is installed, the command shows richer data sourced from ClusterPersona resource summaries, IncidentMemory CRDs, and RemediationAction CRDs. Without the operator, it gracefully degrades to node and control plane information only.

Flags

FlagTypeDefaultDescription
-n, --namespacestringall namespacesFilter incidents by namespace
--kubeconfigstring~/.kube/configPath to kubeconfig file
--jsonboolfalseOutput as JSON (inherited global flag)

Output sections

SectionSourceDescription
Nodeskubectl get nodesName, status (Ready/NotReady), roles, age
Resource SaturationClusterPersona .status.resourceSummaryCPU and memory request utilization as a percentage of allocatable capacity
Control PlanePods in kube-system with tier=control-planeHealth of API Server, Scheduler, Controller Manager, etcd
Active IncidentsIncidentMemory CRDs (operator required)Severity, category, signal, persona reference, age
Pending RemediationsRemediationAction CRDs (operator required)Count of remediations in Pending or Approved phase

Examples

# Full cluster health summary
dorgu health

# JSON output for scripting
dorgu health --json

# Filter incidents to a specific namespace
dorgu health -n production

# Use a specific kubeconfig
dorgu health --kubeconfig /path/to/kubeconfig

JSON output

When --json is set, the output follows this structure:
{
  "nodes": [
    { "name": "node-1", "status": "Ready", "roles": "control-plane", "age": "5d" }
  ],
  "resourceSaturation": {
    "cpu": { "percentage": "42%", "used": "1700m", "allocatable": "4000m" },
    "memory": { "percentage": "61%", "used": "3.2Gi", "allocatable": "5.2Gi" }
  },
  "controlPlane": {
    "healthy": true,
    "components": [
      { "name": "API Server", "healthy": true },
      { "name": "Scheduler", "healthy": true },
      { "name": "Controller Manager", "healthy": true },
      { "name": "etcd", "healthy": true }
    ]
  },
  "activeIncidents": {
    "count": 1,
    "items": [
      {
        "severity": "warning",
        "category": "resource",
        "signal": "OOMKilled",
        "persona": "api-server",
        "namespace": "default",
        "name": "im-default-api-oom-a3f2",
        "age": "2h"
      }
    ]
  },
  "pendingRemediations": { "count": 0 }
}
Requires kubectl in your PATH. Resource saturation data requires the Dorgu Operator and a ClusterPersona resource. Incident and remediation data requires IncidentMemory and RemediationAction CRDs — if these CRDs are not installed, those sections show zero counts.