Alerts
OEC.sh watches your servers and environments and raises alerts when something needs attention. A spike in CPU, a disk filling up, a container that stopped unexpectedly -- you will know about it before your users do.
Alert Types
| Alert | What Triggered It |
|---|---|
| High CPU | Server CPU usage exceeded the threshold for a sustained period |
| High Memory | RAM usage is approaching the server's limit |
| Low Disk Space | The disk is running out of storage |
| Container Down | An Odoo or database container stopped unexpectedly |
| Server Unreachable | The platform cannot connect to your server over the network |
Each alert includes the server name, the metric value that triggered it, and a timestamp.
Alert Severities
Not all alerts are equally urgent. The platform assigns one of three severity levels:
Info
Something changed but no action is required right now. Example: CPU briefly spiked to 72% during a scheduled backup and came back down.
Warning
Worth reviewing in the next few hours. The metric crossed a threshold and may indicate a trend. Example: disk usage hit 82% and is climbing slowly.
Critical
Act now. Something is broken or about to break. Example: a container stopped and did not restart, or the server is completely unreachable.
Default Thresholds
| Metric | Warning | Critical |
|---|---|---|
| CPU | 70-85% | Above 85% |
| Memory | 70-85% | Above 85% |
| Disk | 80-90% | Above 90% |
Where Alerts Appear
Dashboard Notifications
Active alerts show up in the notification area of the dashboard. Critical alerts are highlighted so they stand out from informational ones. The notification count badge updates in real time.
Email Notifications
If you have email notifications configured, alerts are delivered to your inbox. Critical alerts are sent immediately. Warning-level alerts may be batched to avoid flooding your inbox.
Email notification preferences can be configured per user. Check your account settings to make sure alerts are reaching you.
Server Metrics Page
The full alert context is visible on the server's Metrics tab. Go to Servers > select a server > Metrics to see current health status alongside the alert history for that server.
Alert History
Past alerts are stored so you can review what happened and when.
To view alert history:
- Go to the Alerts page from the sidebar (or from the Dashboard notification panel)
- Browse the list of past and active alerts
- Filter by severity, alert type, or server
- Click on an alert to see full details
Alert history is useful for identifying patterns. If a server repeatedly triggers High CPU alerts at 2 AM, that likely coincides with scheduled backups or cron jobs inside Odoo.
Configuring Alert Thresholds
You can adjust when alerts fire to match your infrastructure. A small development server running near 80% CPU might be normal. A production server at 80% CPU is a problem.
To configure thresholds:
- Go to Servers > select your server
- Open the Metrics tab
- Look for the alert threshold settings
- Adjust the Warning and Critical percentages for CPU, Memory, and Disk
- Save your changes
Changes take effect on the next monitoring cycle (within 30 seconds).
Setting thresholds too low generates noise. Setting them too high means you get alerted too late. Start with the defaults and adjust based on your server's normal operating range.
Responding to Alerts
High CPU
Check what is consuming resources. Common causes:
- A long-running Odoo cron job (e.g., mass invoicing, stock recomputation)
- Too many concurrent users for the environment's allocated resources
- A runaway process
If the spike is temporary (backup, cron), it will resolve on its own. If CPU stays high, consider increasing the environment's CPU allocation or optimizing the Odoo workload.
High Memory
Odoo workers consume memory proportional to the number of concurrent requests. If memory is consistently high:
- Reduce the number of Odoo workers
- Increase the environment's RAM allocation
- Check for memory-heavy custom modules
Low Disk Space
Disk fills up from database growth, filestores (uploaded documents), and log files. To free space:
- Run Docker cleanup from the server's Cleanup tab
- Delete old backups you no longer need
- Archive or remove large attachments in Odoo
Container Down
A stopped container usually means the Odoo or database process crashed. Check the environment's logs for error messages. Redeploying the environment restarts the containers.
Server Unreachable
The platform cannot reach your server. Possible causes:
- Server is powered off or rebooting
- Network or firewall changes blocked the connection
- Cloud provider outage
Try Test Connection from the server detail page. If the server is actually running, check that the firewall still allows inbound connections on the required ports.
Troubleshooting
I am not receiving email alerts
Check your account notification settings. Also check your spam folder -- automated alert emails sometimes get filtered.
Alerts fire and resolve repeatedly
This is called "flapping" and usually means a metric is hovering right around the threshold. Adjust the threshold slightly above the normal operating range for that server.
Old alerts still showing as active
Alerts resolve automatically when the underlying metric drops below the threshold. If a resolved condition is still showing as active, refresh the page. The monitoring system checks metrics every 30 seconds.