Skip to content

[18.0][ADD] otel#3561

Draft
ryanc-me wants to merge 2 commits intoOCA:18.0from
ryanc-me:18.0-add-otel
Draft

[18.0][ADD] otel#3561
ryanc-me wants to merge 2 commits intoOCA:18.0from
ryanc-me:18.0-add-otel

Conversation

@ryanc-me
Copy link
Copy Markdown

@ryanc-me ryanc-me commented Mar 18, 2026

This is still very WIP.

Things to do:

  • Cron tracing
  • Add span/trace IDs to logs (https://opentelemetry-python-contrib.readthedocs.io/en/latest/instrumentation/logging/logging.html)
  • Support for logging to an OTel collector?
  • Add optional odoo.http-level tracing (i.e., all requests), with docs on sampling to extract wanted info
  • Allow enable/disable tracing per level (RPC, ORM, Cron, DB). For each type, a few options:
    • Allowlist for methods (empty for all)
    • Allow excluding particular models (ir.model.access, etc)
    • Allow excluding model:method pairs?
    • Only trace when parent is tracing (possible for DB?)
  • PII handling
  • Tidy up bootstrap code (metrics/logs not required?)

The work is split into a few modules:

  • otel is the base OpenTelemetry integration, Python-only (i.e., traces from the Odoo backend)
  • otel_web adds support for tracing from the client-side. Split into a separate module so migrations are easier (JS-heavy modules tend to take longer to be migrated)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant