diff options
author | Zuul <zuul@review.opendev.org> | 2022-10-13 19:03:59 +0000 |
---|---|---|
committer | Gerrit Code Review <review@openstack.org> | 2022-10-13 19:03:59 +0000 |
commit | cc23ea8547366e32c368fef0946db3def5ae2aac (patch) | |
tree | 82c0c998091a2ce9ff32f8082d00a613ab9ccdf7 /zuul | |
parent | 246a7a42f53b917b3903870c1b387f56fe301e0f (diff) | |
parent | 4d7c026a98cb7f1caafc7ace2706c2d6c2ab40dc (diff) | |
download | zuul-cc23ea8547366e32c368fef0946db3def5ae2aac.tar.gz |
Merge "Add timer driver debugging"
Diffstat (limited to 'zuul')
-rw-r--r-- | zuul/driver/timer/__init__.py | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/zuul/driver/timer/__init__.py b/zuul/driver/timer/__init__.py index f415c6012..7922cc604 100644 --- a/zuul/driver/timer/__init__.py +++ b/zuul/driver/timer/__init__.py @@ -39,6 +39,7 @@ class TimerDriver(Driver, TriggerInterface): tracer = trace.get_tracer("zuul") def __init__(self): + self.log.debug("Starting apscheduler") self.apsched = BackgroundScheduler() self.apsched.start() self.tenant_jobs = {} @@ -62,12 +63,14 @@ class TimerDriver(Driver, TriggerInterface): self.election_thread.start() def _runElection(self): + self.log.debug("Starting timer election loop") while not self.stopped: try: self.log.info("Running timer election") self.election.run(self._electionInner) except Exception: self.log.exception("Error in timer election:") + self.log.debug("Exiting timer election loop") def _electionInner(self): try: @@ -77,6 +80,7 @@ class TimerDriver(Driver, TriggerInterface): finally: self.election_won = False self.stop_event.clear() + self.log.debug("Timer election tenure ended") def reconfigure(self, tenant): self._removeJobs(tenant) @@ -84,6 +88,7 @@ class TimerDriver(Driver, TriggerInterface): return if not self.apsched: # Handle possible reuse of the driver without connection objects. + self.log.debug("Starting apscheduler on reconfigure") self.apsched = BackgroundScheduler() self.apsched.start() self._addJobs(tenant) @@ -222,15 +227,23 @@ class TimerDriver(Driver, TriggerInterface): tenant, project_name, branch) def stop(self): + self.log.debug("Stopping timer driver") self.stopped = True self.stop_event.set() if self.apsched: + self.log.debug("Stopping apscheduler") self.apsched.shutdown() self.apsched = None + self.log.debug("Stopped apscheduler") if self.election: + self.log.debug("Stopping election") self.election.cancel() + self.log.debug("Stopped election") if self.election_thread: + self.log.debug("Stopping election thread") self.election_thread.join() + self.log.debug("Stopped election thread") + self.log.debug("Stopped timer driver") def getTrigger(self, connection_name, config=None): return timertrigger.TimerTrigger(self, config) |