Use errback pattern and catch async failures

This commit is contained in:
Erik Johnston 2018-10-08 13:26:54 +01:00
parent 8164f6daf3
commit 8a1817f0d2
2 changed files with 35 additions and 15 deletions

View file

@ -28,6 +28,7 @@ from synapse.metrics import (
event_processing_loop_room_count,
)
from synapse.metrics.background_process_metrics import run_as_background_process
from synapse.util import make_log_failure_errback
from synapse.util.logcontext import make_deferred_yieldable, run_in_background
from synapse.util.metrics import Measure
@ -112,7 +113,11 @@ class ApplicationServicesHandler(object):
if not self.started_scheduler:
def start_scheduler():
return self.scheduler.start().addErrback(log_failure)
return self.scheduler.start().addErrback(
make_log_failure_errback(
"Application Services Failure",
)
)
run_as_background_process("as_scheduler", start_scheduler)
self.started_scheduler = True