Fix logging context warnings due to common usage metrics setup (#14574)

`setup()` is run under the sentinel context manager, so we wrap the
initial update in a background process. Before this change, Synapse
would log two warnings on startup:
    Starting db txn 'count_daily_users' from sentinel context
    Starting db connection from sentinel context: metrics will be lost

Signed-off-by: Sean Quah <seanq@matrix.org>
pull/14521/head
Sean Quah 2022-11-28 15:25:18 +00:00 committed by GitHub
parent d748bbc8f8
commit d56f48038a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 4 additions and 1 deletions

1
changelog.d/14574.bugfix Normal file
View File

@ -0,0 +1 @@
Fix a bug introduced in Synapse 1.67.0 where two logging context warnings would be logged on startup.

View File

@ -54,7 +54,9 @@ class CommonUsageMetricsManager:
async def setup(self) -> None:
"""Keep the gauges for common usage metrics up to date."""
await self._update_gauges()
run_as_background_process(
desc="common_usage_metrics_update_gauges", func=self._update_gauges
)
self._clock.looping_call(
run_as_background_process,
5 * 60 * 1000,