Installation
What Database Health Monitor requires, how to install it, and how to check the install worked.
Requirements
- Odoo 18.0, Community or Enterprise
- Nothing else. No Python package to install, no external service, no agent required to get started.
The host facts — free disk, backup age, filestore size, load average — need a small agent you run yourself. Everything else works the moment you install it.
Install
- Put technovision_database_health in your addons path.
- Update the apps list and install Database Health Monitor.
It adds a Database Health menu, two security groups, thirteen checks with sensible thresholds, and three scheduled actions.
What you get immediately
Thirteen checks, already configured:
| Reads PostgreSQL and Odoo's own bookkeeping | Needs an agent |
|---|---|
| Database size | Free disk space |
| Largest table (with indexes and TOAST) | Backup age |
| Attachments recorded in the database | |
| Scheduled actions failing | |
| Scheduled actions timing out | |
| Mail delivery failures | |
| Oldest unsent message | |
| Server errors logged | |
| Integration failures, backlog, soonest credential expiry |
The last three read unknown until you register a source, and the two agent checks read unknown until an agent reports. That is the intended state, not a broken install — see below.
Unknown is not a failure
A fresh install shows several checks reading unknown, and it is important that they do rather than showing zero or green.
A dashboard that reads green because nothing is being watched is worse than no dashboard, because somebody will believe it. Unknown means nobody can answer this question yet, and the status endpoint returns 503 for it.
Give somebody the groups
| Group | Can |
|---|---|
| Health Observer | See the dashboard, checks and history |
| Health Manager | Change thresholds, alerting, sources and the endpoint |
Settings → Users & Companies → Users, then the Database Health section.
The scheduled actions
Three, all installed active:
| Action | What it does |
|---|---|
| Database Health: run checks | Runs every probe and records a reading |
| Database Health: prune history | Trims readings past their retention |
| Database Health: periodic summary | Sends the digest, if you enable it |
If the dashboard never updates, this is the first place to look — Settings → Technical → Scheduled Actions.
Check the install worked
- Database Health → Checks. Thirteen rows.
- Run Database Health: run checks manually.
- Database size now has a reading, a severity and a last-run time.
If a check reads unknown with an error in its detail, that is the probe guard doing its job: it caught the failure and stored it rather than letting it escape. The error text tells you what happened.
Alerting is off, twice
Nothing is emailed until you turn on both the company master switch and the individual check's own switch. Installing this module will not start mailing anybody.
Upgrading
Upgrade normally. Readings and history are preserved. Thresholds you have changed are not reset — the defaults ship as data and your edits win.
Uninstalling
Removes the checks, the readings and the history. Any endpoint token is dropped with them, so an uptime checker pointed at the status route will start getting 404 rather than 503.