What is Srevox?
Srevox is a self-hosted, telemetry-free Kubernetes pod crash alerting platform. It monitors your containers 24/7 using lightweight HTTP persistent event streams and delivers structured diagnostics to email, chat endpoints, and webhooks instantly.
Key Features
How It Works
Srevox interfaces directly with the Kubernetes API server using a persistent connection. The cluster agent pushes event streams the moment they register.
Architecture Overview
Srevox uses a decoupled microservices architecture designed for ultra-low memory footprint and high resilience in production environments.
Quick Start & Deployment
Option 1: One-Line Automatic Setup
curl -fsSL https://raw.githubusercontent.com/Akshatsainiaks/srevox-setup/main/setup.sh | bash
Option 3: Kubernetes Helm Chart Deployment (v0.1.28)
Deploy, upgrade, or rollback Srevox directly on any Kubernetes cluster (EKS, GKE, AKS, minikube, k3s) using our official Helm repository:
helm repo add srevox https://raw.githubusercontent.com/Akshatsainiaks/srevox-setup/main/charts && helm repo update && helm install srevox srevox/srevox --namespace srevox --create-namespace --set postgres.password="MySecurePassword123!"
helm upgrade srevox srevox/srevox --namespace srevox --reuse-values
helm rollback srevox 1 --namespace srevox
Default Administrator Credentials
Production docker-compose.yml
Use the full production manifest below to boot Srevox services: API, Frontend, Worker, AI Gateway, Activity service, PostgreSQL, and Redis.
services:
postgres:
image: postgres:16-alpine
restart: unless-stopped
environment:
POSTGRES_DB: srevox
POSTGRES_USER: srevox
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
redis:
image: redis:7-alpine
restart: unless-stopped
api:
image: akshatsaini08/srevox-api:v0.1.23
ports:
- "4000:4000"
frontend:
image: akshatsaini08/srevox-frontend:v0.1.23
ports:
- "3000:3000"Connecting a Kubernetes Cluster
Srevox supports two primary methods for cluster integration: direct Service Account API Token connection (Agentless) or in-cluster Watcher Daemon (Agent).
Agent Installation
Deploy the srevox-agent binary or container inside your cluster to monitor pod status events outbound.
kubectl apply -f https://raw.githubusercontent.com/Akshatsainiaks/srevox/main/srevox-agent.yaml
srevox-agent.yaml Manifest
Full Kubernetes ServiceAccount, ClusterRole, ClusterRoleBinding, and Deployment manifest for cluster watching.
apiVersion: v1 kind: ServiceAccount metadata: name: srevox-agent namespace: kube-system --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: name: srevox-agent-role rules: - apiGroups: [""] resources: ["pods", "pods/log", "events", "nodes"] verbs: ["get", "list", "watch"]
Kubeconfig Connection Method
For remote EKS or GKE clusters, upload a sanitized Kubeconfig YAML file directly in the Clusters settings menu.
RBAC & Service Account Security
Srevox requires read-only (get, list, watch) permissions on Pods and Events.
Alert Channels — Email / Gmail (SMTP)
Configure SMTP credentials to receive structured HTML crash reports directly in your engineering team inbox.
Alert Channels — Microsoft Teams
Send rich Adaptive Cards into Microsoft Teams channels with single-click direct links to pod stacktraces.
Alert Channels — WhatsApp Integration
Route urgent P1 CrashLoopBackOff alerts directly to on-call engineer WhatsApp numbers via Twilio API.
Alert Channels — Webhooks & Slack
Incoming Webhooks trigger custom HTTP POST payloads to Slack or custom automation endpoints.
Creating Custom Alert Rules
Set minimum crash counts, target specific Kubernetes namespaces, and define custom alert triggers.
Noise Control & Global Muting
Use cooldown block timers to prevent alert storms when a pod continuously enters CrashLoopBackOff.
Recognized Crash Reasons
Srevox automatically categorizes OOMKilled (Exit 137), SIGSEGV (Exit 139), LivenessProbe failures, and ImagePullBackOff.
AI Incident Diagnostics Overview
Click "Diagnose with AI" on any incident page to generate an instant root-cause breakdown and YAML fix recommendation.
Supported AI Providers
Choose between Groq (ultra-fast inference), OpenAI (GPT-4o), Anthropic (Claude 3.5), or local GPU Ollama containers.
Local & Offline Ollama AI Setup
Connect local GPU-enabled Ollama containers (running models like Llama 3 or CodeLlama) for 100% private, zero-egress diagnostics.
API Authentication & Bearer Tokens
Authenticate REST API calls using Bearer Tokens generated in Administrator Settings.
curl -H 'Authorization: Bearer <TOKEN>' http://localhost:4000/api/v1/incidents
API Endpoints — Incidents
Query, filter, or resolve active cluster incidents programmatically via REST API endpoints.
API Endpoints — Clusters
Register new Kubernetes clusters, update API bearer tokens, or query node health metrics.
Testing Alert Pipeline via Redis
Publish test incident payloads directly to Redis pub/sub channel to verify alerting rules without crashing real pods.
Simulating Pod Crashes
Verify Srevox alerts by deploying a test container that exits with code 139 or OOMKilled states.
kubectl run test-crash --image=busybox --restart=Never -- sh -c 'exit 1'
Running the Go Watcher Service
Run the srevox-agent Go binary directly from source code during local development.
Full Multi-Cluster Production Setup
Complete guide for deploying Srevox across production EKS, GKE, and bare-metal Kubernetes environments.
Was this page helpful?
Help us improve the Srevox documentation.