Logs
Live tails in the console
The Logs page tails logs as they are written. Server-level sources are administrator-only; instance sources follow the same instance scoping as everything else, so an operator sees the logs for their own instances.
On the host
| Path | Contents |
|---|---|
/root/.local/share/odoocli/logs/odoo-cli-*.log | One log per CLI invocation |
/root/.local/share/odoocli/logs/odoo-audit-*.log | The audit trail |
Container logs come from Docker directly:
# docker logs odoo-api --tail 200# docker logs odoo-web --tail 200Job logs
Every job captures its own log, which is a better starting point than the container log for anything that ran as a job. See Jobs.
Log rotation
server install sets up logrotate for the application's logs. Journal vacuuming, stale temporary
file removal and log expiry are also one of the built-in maintenance operations, and that one is
housekeeping: it is never licence-restricted.
# odoocli system maintenanceAn nginx log detail that matters
nginx's real-IP handling rewrites the access log to show the client address recovered from forwarded headers. That is normally what you want, but it means the access log looks the same whether or not the address was actually recovered correctly.
If you are diagnosing intrusion prevention, do not use the access log as evidence that Fail2Ban is seeing real client addresses. See the trusted-proxy warning in Fail2Ban.