Source code for core.plugs.status
# core/plugs/status.py
#
#
""" show version. """
__copyright__ = "Copyright 2015, B.H.J Thate"
## IMPORTS
from core.utils.time import elapsed_days
from core.utils.status import status, upt, waiting, name, loops
from core.kernel import kernel
from core.errors import error
import threading
import time
## CMNDS
[docs]def status_uptime(event): event.reply("uptime is %s" % elapsed_days(time.time() - kernel._start))
kernel.register("status.uptime", status_uptime)
funcs = [status, upt, waiting]
[docs]def status_ps(event):
from core.clock import running
threads = [x for x in threading.enumerate() if status(x)]
for obj in sorted(threads, key=name):
try: o = obj.func.__self__
except: o = obj
res = "%s: " % name(obj)
for func in funcs:
a = func(o)
if not a: continue
try: res += "%s " % a
except: error()
event.reply(res)
kernel.register("status.ps", status_ps)