Monitor & Logs

Monitor your application's health, resource usage, and view logs in real-time from the dashboard.

Application Status

The top summary card shows your application's current status at a glance.

Application Status

Running- All pods healthy
Degraded- Some pods unhealthy
Pending- Application created, never deployed
Crashing- Pods in CrashLoopBackOff / ImagePullBackOff
Stopped- All pods down (node issue or deploy failed)
Disabled- Application disabled (manual or zero balance)

Status Details: Hover over the Application Status badge to see detailed information including desired/ready replicas, pod counts, and last sync time.

Disabled Status: Applications can be disabled manually or automatically when your account balance runs out. Disabled applications don't consume resources and billing is paused. You can re-enable them from the Power Control tab.

How Status Works & Billing

Application status is determined by monitoring-worker, which polls Kubernetes every ~12 seconds and writes the runtime status directly to the database. Billing is based on status: only running, degraded, crashing, and success applications are charged. See the full status & billing reference for the complete determination table.

Deployment Status

Not Deployed- Never deployed
Pending- Waiting to start
Building- Docker build in progress
Success- Deployment successful
Failed- Deployment failed

Resource Usage Monitoring

Monitor CPU, Memory, and Pod usage in real-time with interactive charts powered by Prometheus.

Pod Count Chart

Track the number of running pods over time. See how auto-scaling responds to traffic changes.

What to watch for:

  • • Pod count should stay within min/max bounds
  • • Sudden drops may indicate pod failures
  • • Gradual increases suggest traffic growth

CPU Usage Chart

Monitor CPU consumption across all pods. View as percentage of limit or absolute values (cores).

View modes:

  • Percent: CPU usage as percentage of package limit (easier to understand)
  • Absolute: Actual CPU cores used (useful for optimization)

High CPU: If CPU consistently approaches 100%, consider upgrading your package or optimizing your application.

Memory Usage Chart

Track memory consumption. Critical for identifying memory leaks and optimizing resource allocation.

Memory Issues: If memory usage approaches the limit, pods may be killed by Kubernetes (OOM - Out of Memory). Monitor closely and upgrade package if needed.

Time Range Selector

Adjust the time window for resource usage charts to analyze different time periods:

5s
10s
30s
1m
5m
15m
30m
1h
2h
1d

Tip: Use shorter ranges (5s-1m) for real-time monitoring. Use longer ranges (1h-1d) for trend analysis.

Auto Refresh

Enable auto-refresh to automatically update charts at regular intervals:

  • 5s: Real-time monitoring (high resource usage)
  • 10s-30s: Active monitoring during deployment or troubleshooting
  • 1m-5m: Regular monitoring for production applications
  • Off: Manual refresh only (save resources)

Build Logs

Viewing Build Logs

Build logs show the complete deployment process including Docker build output, image push, and container startup.

Log information includes:

  • • Docker build steps and layer caching
  • • Image push progress
  • • Kubernetes resource creation
  • • Container startup logs
  • • Health check results
  • • Error messages (if deployment fails)

Auto-refresh: Build logs auto-refresh every 2 seconds during deployment. Use pagination to navigate through long logs.

Application Logs

View real-time application logs from your running containers. Logs help you:

  • Debug application errors
  • Monitor application behavior
  • Track request processing
  • Identify performance bottlenecks

Application logs are collected from all running pods and aggregated in the Logs tab. Logs are timestamped and can be filtered by pod.

Application Health & Topology

Real-Time Health Overview

Monitor your application's health status, pod topology, and real-time metrics from the dashboard.

Health & topology features:

  • Pod Topology: Visual diagram of your Kubernetes pods and their connections
  • Pod Status: Real-time status of each pod (Running, Pending, Terminating, etc.)
  • Restarts: Number of container restarts per pod
  • Age: How long each pod has been running
  • Resource Metrics: CPU and memory per pod

Live updates: Pod topology updates automatically when pods are added, removed, or change state during deployments and scaling events.

Power Control (Disable/Enable)

Disable and Enable Applications

You can temporarily disable your applications to stop billing and resource consumption, then re-enable them when needed.

What happens when you disable:

  • • All pods are scaled down to 0 (application stops running)
  • • Billing stops immediately
  • • Domain monitoring is paused
  • • Application configuration is preserved
  • • You can re-enable anytime

Re-enabling: When you enable an application, it will be redeployed with your original configuration. The deployment process will start automatically, and billing will resume once the application is running.

Auto-Disable:

If your account balance runs out, all your running applications will be automatically disabled to prevent further charges. To re-enable them:

  1. Top up your account balance
  2. Go to the Power Control tab
  3. Click "Enable Application"

Status & Billing Reference

The table below shows how each combination of deployment status and application status is determined, and which states are billable.

ConditionDeployment StatusApplication StatusBillable
App created, never deployedpendingpendingNo
Deploy triggered, K8s job runningbuildingunchangedNo
All pods Running, ready = desiredsuccessrunningYes
Pods Running but ready < desiredsuccessdegradedYes
Pod in CrashLoopBackOff / ImagePullBackOffsuccesscrashingYes
All pods Failed / Succeeded (Deployment down)successstoppedNo
Deploy failed, old pods still runningfailedunchanged (from K8s)Yes
Deploy failed, old pods also deadfailedstoppedNo
App disabled (manual or zero balance)disableddisabledNo