mirror of
https://git.anonymousland.org/anonymousland/synapse.git
synced 2025-08-05 10:44:13 -04:00
Clean up some LoggingContext stuff (#7120)
* Pull Sentinel out of LoggingContext ... and drop a few unnecessary references to it * Factor out LoggingContext.current_context move `current_context` and `set_context` out to top-level functions. Mostly this means that I can more easily trace what's actually referring to LoggingContext, but I think it's generally neater. * move copy-to-parent into `stop` this really just makes `start` and `stop` more symetric. It also means that it behaves correctly if you manually `set_log_context` rather than using the context manager. * Replace `LoggingContext.alive` with `finished` Turn `alive` into `finished` and make it a bit better defined.
This commit is contained in:
parent
1fcf9c6f95
commit
39230d2171
24 changed files with 232 additions and 222 deletions
|
@ -32,6 +32,7 @@ from synapse.config.database import DatabaseConnectionConfig
|
|||
from synapse.logging.context import (
|
||||
LoggingContext,
|
||||
LoggingContextOrSentinel,
|
||||
current_context,
|
||||
make_deferred_yieldable,
|
||||
)
|
||||
from synapse.metrics.background_process_metrics import run_as_background_process
|
||||
|
@ -483,7 +484,7 @@ class Database(object):
|
|||
end = monotonic_time()
|
||||
duration = end - start
|
||||
|
||||
LoggingContext.current_context().add_database_transaction(duration)
|
||||
current_context().add_database_transaction(duration)
|
||||
|
||||
transaction_logger.debug("[TXN END] {%s} %f sec", name, duration)
|
||||
|
||||
|
@ -510,7 +511,7 @@ class Database(object):
|
|||
after_callbacks = [] # type: List[_CallbackListEntry]
|
||||
exception_callbacks = [] # type: List[_CallbackListEntry]
|
||||
|
||||
if LoggingContext.current_context() == LoggingContext.sentinel:
|
||||
if not current_context():
|
||||
logger.warning("Starting db txn '%s' from sentinel context", desc)
|
||||
|
||||
try:
|
||||
|
@ -547,10 +548,8 @@ class Database(object):
|
|||
Returns:
|
||||
Deferred: The result of func
|
||||
"""
|
||||
parent_context = (
|
||||
LoggingContext.current_context()
|
||||
) # type: Optional[LoggingContextOrSentinel]
|
||||
if parent_context == LoggingContext.sentinel:
|
||||
parent_context = current_context() # type: Optional[LoggingContextOrSentinel]
|
||||
if not parent_context:
|
||||
logger.warning(
|
||||
"Starting db connection from sentinel context: metrics will be lost"
|
||||
)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue