Skip to content

Commit e10c5c3

Browse files
committed
add job-id or pid in log status and update touch function
1 parent f778f7a commit e10c5c3

File tree

2 files changed

+14
-5
lines changed

2 files changed

+14
-5
lines changed

src/run.py

+9-5
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,7 @@ def _init(self):
8484
self.reseted = False
8585
self.localprocess = {}
8686
self.cloudjob = {}
87+
self.sge_jobid = {}
8788
self.jobsgraph = dag.DAG()
8889
self.has_success = []
8990
self.__add_depency_for_wait()
@@ -97,7 +98,6 @@ def _init(self):
9798
self.conf.max_check or 3).limit_denominator()
9899
self.sub_rate = Fraction(
99100
self.conf.max_submit or 30).limit_denominator()
100-
self.sge_jobid = {}
101101
self.maxjob = int(self.maxjob or len(self.jobs))
102102
self.jobqueue = JobQueue(maxsize=min(max(self.maxjob, 1), 1000))
103103
self.init_time_stamp = now()
@@ -232,11 +232,15 @@ def add_callback(self, callback=""):
232232
def log_status(self, job):
233233
name = job.jobname
234234
if name in self.cloudjob:
235-
name = self.cloudjob[name]
235+
name += " (task-id: {})".format(self.cloudjob[name])
236+
elif name in self.sge_jobid:
237+
name += " (job-id: {})".format(self.sge_jobid[name])
238+
elif name in self.localprocess:
239+
name += " (pid: {})".format(self.localprocess[name].pid)
236240
if job.is_fail:
237241
level = "error"
238242
elif job.status == "resubmit":
239-
level = "warn"
243+
level = "warning"
240244
else:
241245
level = "info"
242246
if not job.is_wait:
@@ -470,7 +474,6 @@ def submit(self, job):
470474
logcmd.write(style("\n-------- retry --------\n",
471475
fore="red", mode="bold") + job.rawstring+"\n")
472476
job.set_status("resubmit")
473-
self.log_status(job)
474477
logcmd.write("[%s] " % datetime.today().strftime("%F %X"))
475478
logcmd.flush()
476479
if job.host is not None and job.host in ["localhost", "local"]:
@@ -490,7 +493,7 @@ def submit(self, job):
490493
self.localprocess[job.name] = p
491494
elif job.host == "sge":
492495
job.raw2cmd(job.subtimes and abs(self.retry_ivs) or 0)
493-
call_cmd(["touch", job.stat_file + ".submit"])
496+
touch(job.stat_file + ".submit")
494497
jobcpu = job.cpu or self.cpu
495498
jobmem = job.mem or self.mem
496499
job.update_queue(self.queue)
@@ -517,6 +520,7 @@ def submit(self, job):
517520
task.name, task.id, job.subtimes+1)
518521
logcmd.write(info)
519522
self.cloudjob[task.name] = task.id
523+
self.log_status(job)
520524
self.logger.debug("%s job submit %s times", job.name, job.subtimes)
521525
job.subtimes += 1
522526
self.submited = True

src/utils.py

+5
Original file line numberDiff line numberDiff line change
@@ -355,6 +355,11 @@ def mkdir(*path):
355355
pass
356356

357357

358+
def touch(fname, times=None):
359+
with open(fname, 'a'):
360+
os.utime(fname, times)
361+
362+
358363
def is_entry_cmd():
359364
prog = abspath(realpath(sys.argv[0]))
360365
return basename(prog) in \

0 commit comments

Comments
 (0)