Analytics
Analytics installs Metabase beside the shared cluster and keeps it matched to this server: a read-only data source per Odoo database, and an account for every console user that sees exactly the instances the console assigns them.
It is the Analytics tab under PostgreSQL > Local, between Scaling and Upgrade.
Nobody signs in by hand
The Analytics entry opens Metabase already signed in, as you. There is no second set of credentials to hand out, and no second place to remember to remove somebody from.
The console remains the one place where access is decided, and the sync keeps Metabase in step with it.
| What the console decides | What Metabase gets |
|---|---|
| Which instances a user may see | Exactly those, and no others |
| A user removed from the console | The matching account loses its access |
| A new Odoo database | A new read-only data source |
Whether an instance's operators may write native SQL is a switch on that instance's Configuration tab.
It reads the replica when there is one
Each data source is read-only, and read through the read replica whenever one is streaming. A reporting query that someone writes badly then lands on the standby rather than on the cluster your instances are serving from.
With no replica, it reads the primary directly.
The analytics database is a system database
Like master and postgres: it wears the system badge, has no delete action, cannot be restored
over, and is refused by every delete path down to the host agent.
Ports
Once installed, analytics listens on two new host ports: 5511 (HTTP) and 5512 (HTTPS, using the management certificate).
They are not opened for you, and they should not be opened to the internet by reflex. Metabase is a window onto every database on this server.
Memory
Metabase runs in a container capped at its memory ceiling, 2 GiB unless you set another (1.5 GiB is the floor: Metabase does not start in less). It is only installed and started when the host has that ceiling plus 1 GiB free for the rest of the server; after a restart onto a host with less, it is held, and started again once there is room. A host short of memory loses processes to the kernel across the whole machine, so the check protects your Odoo and PostgreSQL, not only the reports.
Start even when the host is short of memory, under the ceilings, switches that check off: a shortfall becomes a warning in the job's log and the server's, and the service runs anyway. Use it only on a host you know - if memory then does run out, the kernel may stop Odoo or PostgreSQL rather than Metabase.
From the command line
pelmo$ ohm server analytics status --server pelmopelmo$ ohm server analytics install --server pelmopelmo$ ohm server analytics sync --server pelmopelmo$ ohm instance analytics --instance fanes --server pelmoWhen the license stops covering it
The container is stopped rather than removed, and the next covering license starts it again. Your questions, dashboards and collections are still there.
Removing analytics, and the sync that keeps its access in step with this console, are never restricted - an unlicensed server must always be able to take it off and to stop granting access it can no longer manage.
The License page lists the held service with everything else the license switched off. See When the license changes.