Browse Source

Add ETA column

master
JustAnotherArchivist 3 years ago
parent
commit
d82dff8b71
1 changed files with 8 additions and 1 deletions
  1. +8
    -1
      archivebot-jobs

+ 8
- 1
archivebot-jobs View File

@@ -22,6 +22,7 @@ columns = {
'dl urls': (lambda job, pipelines: job["job_data"]["items_downloaded"], ('numeric',)),
'dl size': (lambda job, pipelines: job["job_data"]["bytes_downloaded"], ('size', 'numeric')),
'queue': (lambda job, pipelines: job["job_data"]["items_queued"] - job["job_data"]["items_downloaded"], ('numeric',)),
'eta': (lambda job, pipelines: int((curTime := time.time()) + (job["job_data"]["items_queued"] - job["job_data"]["items_downloaded"]) / (job["job_data"]["items_downloaded"] / (curTime - job["job_data"]["started_at"]))) if job["job_data"]["items_downloaded"] > 0 else 0, ('date', 'numeric')),
'con': (lambda job, pipelines: job["job_data"]["concurrency"], ('numeric',)),
'delay min': (lambda job, pipelines: int(job["job_data"]["delay_min"]), ('hidden', 'numeric')),
'delay max': (lambda job, pipelines: int(job["job_data"]["delay_max"]), ('hidden', 'numeric')),
@@ -213,7 +214,13 @@ def render_date(ts, coloured = False):
colourEndStr = "\x1b[0m" if colourStr else ""
if args.dates:
return (colourStr, datetime.datetime.fromtimestamp(ts).isoformat(sep = " "), colourEndStr)
if diff <= 0:
if diff < -86400:
return (colourStr, f"in {-diff // 86400:.0f}d {(-diff % 86400) // 3600:.0f}h", colourEndStr)
elif diff < -60:
return (colourStr, "in " + (f"{-diff // 3600:.0f}h " if diff <= -3600 else "") + f"{(-diff % 3600) // 60:.0f}mn", colourEndStr)
elif diff < 0:
return "in <1 min"
elif diff == 0:
return "now"
elif diff < 60:
return "<1 min ago"


Loading…
Cancel
Save