self._stop(job, "misbehaving. Reason: " + str(e))
def update(self):
+ """
+ Creates and supervises every job thread.
+ This will stay forever and ever and ever forever and ever it'll be the one...
+ """
for job in self.jobs:
job.start()
'freq': freq}
def _run_once(self):
+ """
+ Executes self.update(interval) and draws run time chart.
+ Return value presents exit status of update()
+ :return: boolean
+ """
t_start = time.time()
# check if it is time to execute job update() function
if self.timetable['next'] > t_start:
return True
def run(self):
+ """
+ Runs job in thread. Handles retries.
+ Exits when job failed or timed out.
+ :return: None
+ """
self.timetable['last'] = time.time()
while True:
try:
Print message on stderr.
:param msg_type: str
"""
- sys.stderr.write(PROGRAM)
- sys.stderr.write(" ")
- sys.stderr.write(msg_type)
- sys.stderr.write(": ")
+ msg = PROGRAM + " " + str(msg_type) + ":"
for i in args:
- sys.stderr.write(" ")
- sys.stderr.write(str(i))
- sys.stderr.write("\n")
+ msg += " "
+ msg += str(i)
+ sys.stderr.write(msg + "\n")
sys.stderr.flush()