Managing Services
Start, stop, restart, and manage your Odoo services.
Once a service is created, you can manage its lifecycle directly from the hav.sh dashboard.
#Starting and stopping
#Start a service
If a service is stopped, click the Start button on the service page. The container will boot up and Odoo will become accessible at its URL.
#Stop a service
Click Stop to shut down a running service. This stops the container but preserves all data โ the database, files, and configuration remain intact. You can start it again at any time.
#Restart a service
Click Restart to stop and immediately start the service. This is useful when:
- You've installed or updated an addon
- Odoo seems unresponsive
- You've changed configuration that requires a restart
Stopping a service does not delete any data. Your database and files are safely preserved.
#Deleting a service
To permanently remove a service:
- Open the service you want to delete
- Click Delete in the service actions
- Confirm the deletion
Deleting a service permanently removes the container, database, and all associated files. Make sure you have a backup before deleting. This action cannot be undone.
#Neutralizing a service
The Neutralize action strips sensitive data from a service. This is useful when you want to create a safe demo or test copy of a production instance โ it anonymizes data so real customer information isn't exposed.
#Configuring Odoo settings
The Extra Configuration section allows you to add custom Odoo configuration settings directly to your service. These settings are injected into the Odoo configuration file (.odoorc) when the service starts.
#Adding configuration
- Open the service you want to configure
- Expand the Extra Configuration section (collapsed by default)
- Add key-value pairs for your settings
- Save the changes
- Restart the service for the new settings to take effect
#Common settings
| Setting | Description | Example |
|---|---|---|
limit_memory_hard |
Hard memory limit per worker (bytes) | 2684354560 |
limit_memory_soft |
Soft memory limit per worker (bytes) | 2147483648 |
limit_time_cpu |
CPU time limit per request (seconds) | 600 |
limit_time_real |
Real time limit per request (seconds) | 1200 |
workers |
Number of worker processes | 4 |
max_cron_threads |
Maximum cron worker threads | 2 |
Changes to configuration settings require a service restart to take effect. Use the Restart button after saving your changes.
Avoid newline characters in configuration values โ they are not supported and will cause validation errors.
#Viewing live logs
You can stream the Odoo container logs in real-time directly from the service page. This is useful for debugging issues, monitoring startup behavior, or watching request activity.
#How to view logs
- Open a running service
- Click the View Logs button in the header
- A slide-over panel opens and begins streaming logs in real-time
The log viewer shows both standard output and error output (highlighted in yellow). Logs are streamed live for up to 5 minutes per session. You can close the panel and reopen it at any time to start a new session.
The View Logs button is only available when the service is running.
#Viewing actions
Every operation performed on a service is logged in the Actions tab. Each action shows:
- The operation that was performed
- Whether it succeeded or failed
- When it ran
- Detailed output (for troubleshooting)
This gives you a complete audit trail of everything that has happened to a service.
#Webhooks
Each service has a unique webhook token that allows external systems to send notifications to hav.sh. This is used for:
- Syncing the list of installed modules
- Tracking module upgrades
- Integration with CI/CD pipelines