mirror of
https://mau.dev/maunium/synapse.git
synced 2024-10-01 01:36:05 -04:00
9eea4646be
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 |