mirror of
https://git.anonymousland.org/anonymousland/synapse.git
synced 2025-11-08 04:52:52 -05:00
This adds quite a lot of OpenTracing decoration for database activity. Specifically it adds tracing at four different levels: * emit a span for each "interaction" - ie, the top level database function that we tend to call "transaction", but isn't really, because it can end up as multiple transactions. * emit a span while we hold a database connection open * emit a span for each database transaction - actual actual transaction. * emit a span for each database query. I'm aware this might be quite a lot of overhead, but even just running it on a local Synapse it looks really interesting, and I hope the overhead can be offset just by turning down the sampling frequency and finding other ways of tracing requests of interest (eg, the `force_tracing_for_users` setting). |
||
|---|---|---|
| .. | ||
| databases | ||
| engines | ||
| schema | ||
| util | ||
| __init__.py | ||
| _base.py | ||
| background_updates.py | ||
| database.py | ||
| keys.py | ||
| persist_events.py | ||
| prepare_database.py | ||
| purge_events.py | ||
| push_rule.py | ||
| relations.py | ||
| roommember.py | ||
| state.py | ||
| types.py | ||