Ask Solem 14 лет назад
Родитель
Сommit
540e0779c3
3 измененных файлов с 20 добавлено и 4 удалено
  1. 3 4
      celery/apps/worker.py
  2. 10 0
      celery/bin/celeryev.py
  3. 7 0
      celery/platforms.py

+ 3 - 4
celery/apps/worker.py

@@ -223,10 +223,9 @@ class Worker(object):
         os.environ.setdefault("celery_dummy_proxy", "set_by_celeryd")
 
     def set_process_status(self, info):
-        arg_start = "manage" in sys.argv[0] and 2 or 1
-        if sys.argv[arg_start:]:
-            info = "%s (%s)" % (info, " ".join(sys.argv[arg_start:]))
-        return platforms.set_mp_process_title("celeryd", info=info,
+        info = "%s (%s)" % (info, platforms.strargv(sys.argv))
+        return platforms.set_mp_process_title("celeryd",
+                                              info=info,
                                               hostname=self.hostname)
 
 

+ 10 - 0
celery/bin/celeryev.py

@@ -3,6 +3,7 @@ import sys
 
 from optparse import OptionParser, make_option as Option
 
+from celery import platforms
 from celery.events.cursesmon import evtop
 from celery.events.dumper import evdump
 from celery.events.snapshot import evcam
@@ -30,13 +31,22 @@ OPTION_LIST = (
 )
 
 
+def set_process_status(prog, info=""):
+        info = "%s %s" % (info, platforms.strargv(sys.argv))
+        return platforms.set_process_title(prog,
+                                           info=info)
+
+
 def run_celeryev(dump=False, camera=None, frequency=1.0, maxrate=None,
         loglevel=logging.WARNING, logfile=None, **kwargs):
     if dump:
+        set_process_status("celeryev:dump")
         return evdump()
     if camera:
+        set_process_status("celeryev:cam")
         return evcam(camera, frequency, maxrate,
                      loglevel=loglevel, logfile=logfile)
+    set_process_status("celeryev:top")
     return evtop()
 
 

+ 7 - 0
celery/platforms.py

@@ -303,6 +303,13 @@ def install_signal_handler(signal_name, handler):
         pass
 
 
+def strargv(argv):
+    arg_start = "manage" in argv[0] and 2 or 1
+    if len(argv) > arg_start:
+        return " ".join(argv[arg_start:])
+    return ""
+
+
 def set_process_title(progname, info=None):
     """Set the ps name for the currently running process.