|
@@ -1,9 +1,8 @@
|
|
|
-import platform
|
|
|
import threading
|
|
|
|
|
|
from time import time, sleep
|
|
|
|
|
|
-from celery import __version__
|
|
|
+from celery.worker.state import SOFTWARE_INFO
|
|
|
|
|
|
|
|
|
class Heart(threading.Thread):
|
|
@@ -14,9 +13,6 @@ class Heart(threading.Thread):
|
|
|
Default is 2 minutes.
|
|
|
|
|
|
"""
|
|
|
- software_info = {"sw_ident": "celeryd",
|
|
|
- "sw_ver": __version__,
|
|
|
- "sw_sys": platform.system()}
|
|
|
|
|
|
#: Beats per minute.
|
|
|
bpm = 0.5
|
|
@@ -34,11 +30,8 @@ class Heart(threading.Thread):
|
|
|
self._state = "RUN"
|
|
|
bpm = self.bpm
|
|
|
dispatch = self.eventer.send
|
|
|
- software_info = self.software_info
|
|
|
|
|
|
- dispatch("worker-online", **software_info)
|
|
|
-
|
|
|
- sw_ident, sw_ver, sw_sys = self.software_info
|
|
|
+ dispatch("worker-online", **SOFTWARE_INFO)
|
|
|
|
|
|
# We can't sleep all of the interval, because then
|
|
|
# it takes 60 seconds (or value of interval) to shutdown
|
|
@@ -55,12 +48,12 @@ class Heart(threading.Thread):
|
|
|
|
|
|
if not last_beat or now > last_beat + (60.0 / bpm):
|
|
|
last_beat = now
|
|
|
- dispatch("worker-heartbeat", **software_info)
|
|
|
+ dispatch("worker-heartbeat", **SOFTWARE_INFO)
|
|
|
if self._shutdown.isSet():
|
|
|
break
|
|
|
sleep(1)
|
|
|
|
|
|
- dispatch("worker-offline", **software_info)
|
|
|
+ dispatch("worker-offline", **SOFTWARE_INFO)
|
|
|
|
|
|
def stop(self):
|
|
|
"""Gracefully shutdown the thread."""
|