View pod details, stream container logs, and open terminal sessions for debugging. Access pods from the cluster detail page or directly from incidents.
The Pods tab shows all pods in the cluster with filtering options:
| Column | Description |
|---|---|
| Name | Pod name |
| Namespace | Kubernetes namespace |
| Status | Running, Pending, Failed, etc. |
| Ready | Ready containers / Total containers |
| Restarts | Total restart count across all containers |
| Age | Time since pod creation |
| Node | Node the pod is scheduled on |
| Status | Color | Meaning |
|---|---|---|
| Running | Green | All containers running and healthy |
| Pending | Yellow | Waiting for scheduling or image pull |
| Succeeded | Gray | All containers completed successfully (Jobs) |
| Failed | Red | One or more containers terminated with error |
| Unknown | Gray | Pod state cannot be determined |
| Filter | Description |
|---|---|
| Namespace | Select specific namespace or "All Namespaces" |
| Status | Running, Pending, Failed, Succeeded, or All |
| Search | Filter by pod name (real-time) |
Click any pod to open the detail panel:
| Field | Description |
|---|---|
| Name | Full pod name |
| Namespace | Namespace |
| Status | Current pod phase |
| Pod IP | Cluster IP assigned to pod |
| Node | Node name and IP |
| Created | Creation timestamp |
| Labels | Kubernetes labels (key: value) |
| Annotations | Kubernetes annotations |
For each container in the pod:
| Field | Description |
|---|---|
| Name | Container name |
| Image | Container image and tag |
| Status | Running, Waiting, or Terminated |
| Ready | Readiness probe status |
| Restarts | Container restart count |
| Started | Container start time |
Click Logs to open the log viewer for a container.
| Feature | Description |
|---|---|
| Live Streaming | Real-time log updates via WebSocket connection |
| Search | Filter logs by keyword or regex |
| Time Range | Last 15min, 30min, 1hr, 24hr, or All |
| Container Select | Switch between containers (multi-container pods) |
| AI Analysis | AI-powered log analysis panel for root cause detection |
| Download | Export logs as text file |
| Line Wrap | Toggle word wrapping |
| Pause/Resume | Pause live streaming to read |
The log viewer includes an AI analysis panel that examines container logs and provides:
Click Analyze Logs in the log viewer toolbar to trigger AI analysis on the current log output.
| Option | Description |
|---|---|
| Last 15 min | Most recent 15 minutes |
| Last 30 min | Most recent 30 minutes |
| Last 1 hour | Most recent hour |
| Last 24 hours | Most recent 24 hours |
| All | All available logs (may be large) |
For pods with multiple containers (sidecars, init containers):
Init container logs are available after they complete.
Click Terminal to open an interactive shell inside the container.
| Feature | Description |
|---|---|
| Interactive Shell | Full shell access (sh, bash, etc.) |
| Tab Completion | Command and path completion |
| Copy/Paste | Ctrl+C/Ctrl+V or right-click |
| Resize | Drag edges to resize terminal |
| Multiple Tabs | Open terminals in multiple pods |
/ # ls -la
total 64
drwxr-xr-x 1 root root 4096 Jan 15 10:30 .
drwxr-xr-x 1 root root 4096 Jan 15 10:30 ..
drwxr-xr-x 2 root root 4096 Jan 15 10:30 app
-rw-r--r-- 1 root root 123 Jan 15 10:30 config.yaml
/ # cat config.yaml
database:
host: db.example.com
port: 5432
/ # env | grep DB
DB_HOST=db.example.com
DB_PORT=5432
| Security Feature | Description |
|---|---|
| RBAC Required | User needs pods/exec create permission |
| Approval Workflow | Optional approval before exec (if configured) |
| Audit Logging | All terminal sessions are logged |
| Auto-Timeout | Sessions close after inactivity period |
Click Events to view Kubernetes events for the pod:
| Type | Description |
|---|---|
| Normal | Informational events (Scheduled, Pulled, Started) |
| Warning | Issues requiring attention (BackOff, Failed) |
Type Reason Age Message
──── ────── ─── ───────
Normal Scheduled 10m Successfully assigned default/api-7d9f8c to node-1
Normal Pulling 10m Pulling image "api:v1.2.3"
Normal Pulled 9m Successfully pulled image in 45s
Normal Created 9m Created container api
Normal Started 9m Started container api
| Event | Meaning |
|---|---|
| BackOff | Container crashing and backing off restarts |
| FailedScheduling | No node has enough resources |
| FailedMount | Volume mount failed (secrets, configmaps) |
| Unhealthy | Readiness or liveness probe failing |
If metrics-server is installed, pods show resource usage:
CPU: ████████░░ 80% (800m / 1000m)
Memory: ██████░░░░ 60% (600Mi / 1Gi)
| Metric | Description |
|---|---|
| CPU | Current CPU vs. limit (millicores) |
| Memory | Current memory vs. limit |
Pods without limits show usage without percentage.
Click Delete to remove a pod from the cluster.
| Name | Namespace | Status | Ready | Restarts | Age | Node |
|---|---|---|---|---|---|---|
| api-gateway-7d9f8c6b4d-2xkjp | production | Running | 1/1 | 0 | 2d | node-1 |
| api-gateway-7d9f8c6b4d-9vwrt | production | Running | 1/1 | 0 | 2d | node-2 |
| worker-5f8d9c7b2-kp3mn | production | CrashLoopBackOff | 0/1 | 15 | 1h | node-3 |
| redis-0 | production | Running | 1/1 | 0 | 5d | node-1 |
Pod Information:
Name: worker-5f8d9c7b2-kp3mn
Namespace: production
Status: CrashLoopBackOff
Pod IP: 10.0.3.45
Node: ip-10-0-3-78.ec2.internal (10.0.3.78)
Created: 2024-01-15 09:30:00 UTC
Labels:
app: worker
version: v1.2.3
environment: production
Container: worker
Image: worker:v1.2.3
Status: Waiting (CrashLoopBackOff)
Ready: False
Restart Count: 15
Last State: Terminated (Error, exit code 1)
Started: 10:45:00 UTC
Finished: 10:45:05 UTC
Type Reason Age Message
──── ────── ─── ───────
Normal Scheduled 1h Successfully assigned production/worker-... to node-3
Normal Pulled 1h Container image "worker:v1.2.3" already present
Normal Created 15m Created container worker
Normal Started 15m Started container worker
Warning BackOff 5m Back-off restarting failed container
[10:45:01] INFO Worker v1.2.3 starting
[10:45:02] INFO Connecting to Redis at redis.production:6379
[10:45:02] INFO Redis connection established
[10:45:03] INFO Loading job queue configuration
[10:45:03] ERROR Missing required environment variable: AWS_REGION
[10:45:03] ERROR Configuration validation failed
[10:45:04] FATAL Exiting due to configuration error
/ # env | grep AWS
AWS_ACCESS_KEY_ID=AKIA...
AWS_SECRET_ACCESS_KEY=...
# AWS_REGION is missing!
/ # cat /etc/config/worker.yaml
redis:
host: redis.production
port: 6379
queue:
name: jobs
region: ${AWS_REGION} # This requires AWS_REGION env var
/ # exit
Found the issue: AWS_REGION environment variable is missing from the deployment.
Fix applied to deployment:
env:
- name: AWS_REGION
value: "us-east-1"
After applying the fix:
worker-5f8d9c7b2-new-pod 1/1 Running 0 30s
Container: api-gateway
Time Range: Last 15 min
Search: "error"
[10:42:15] INFO Request received: GET /api/users/123
[10:42:15] INFO Database query executed in 45ms
[10:42:15] INFO Response sent: 200 OK (52ms total)
[10:42:30] WARN Slow query detected: 850ms for /api/reports
[10:43:01] ERROR Connection timeout to external-service.com:443
[10:43:01] ERROR Retry 1/3 for external API call
[10:43:03] INFO Retry successful, response received
[10:44:15] INFO Health check passed
[10:45:00] INFO Metrics exported to Prometheus
Pod: web-app-7d9f8c6b4d-2xkjp
Containers: [app] [nginx-sidecar] [log-shipper]
Selected: app
─────────────────────────────────────
[10:45:00] INFO Application started on port 3000
[10:45:01] INFO Connected to database
[10:45:02] INFO Ready to accept connections
Selected: nginx-sidecar
─────────────────────────────────────
10.0.1.45 - - [15/Jan/2024:10:45:15 +0000] "GET /health HTTP/1.1" 200 2
10.0.1.45 - - [15/Jan/2024:10:45:30 +0000] "GET /api/users HTTP/1.1" 200 1523
10.0.2.78 - - [15/Jan/2024:10:45:45 +0000] "POST /api/orders HTTP/1.1" 201 89