Project

General

Profile

Actions

Story #2883

closed

Interactive job log browser to sort/select task logs for diagnostic and profiling purposes

Added by Tom Clegg over 10 years ago. Updated over 10 years ago.

Status:
Resolved
Priority:
Normal
Assigned To:
Category:
-
Target version:
Start date:
06/11/2014
Due date:
% Done:

100%

Estimated time:
(Total: 16.00 h)
Story points:
0.5

Description

The "log" link for a completed job should go to a (new) "log" tab on the "view job" page. (Perhaps /jobs/{uuid}#Log just needs some generic javascript for "on page load, if location anchor is a tab, hit that tab")

The log tab should offer various views of the log data.
  • Overview
    • Obvious "N failed tasks" button (if any failed) that brings you to the "log messages" tab for all the failures
    • "123 tasks completed in 1 hour 12 minutes, using 3 nodes"
    • "3 hours 8 minutes of worker node usage, plus 28 minutes idle" ("idle" = node allocated but no tasks running there)
    • Start time, finish time
    • #complete, #incomplete, #failures. (complete+incomplete=total. E.g., a task can fail twice and then succeed on the third attempt.)
    • For each category (completed task IDs / incomplete task IDs / failures), show min/max runtime.
  • Time chart (lower priority)
    • Perhaps like the chrome debug panel's view of network activity (attached screen shot), but more compact.
    • Or, perhaps a vertical view with y=time(down), x=node -- i.e., idle nodes show up as empty areas.
  • Messages from selected task(s)
    • Just the setup/teardown/stderr messages relating to specified task(s)
    • Sort by task qsequence, then log timestamp
    • Drop-down to select "all tasks", or "all failures", "all successes", or a single task (show sequence, qsequence, and uuid in the drop-down items)
      • Showing 1000 task IDs in a drop-down won't work well. (Either limit the drop-down to the first hard-coded N tasks, or don't even offer the "specified task" option, or some other reasonable strategy.)

Parsing should probably happen on the client side. (First iteration should just deal with a static log file but future work will include updating this page as new logs arrive by websocket. And the raw log needs to show up on the client side anyway, so might as well do everything from there?)


Files

Screenshot from 2014-06-04 12_57_18.png (6.6 KB) Screenshot from 2014-06-04 12_57_18.png Tom Clegg, 06/04/2014 12:57 PM
Screenshot from 2014-06-16 09_41_24.png (184 KB) Screenshot from 2014-06-16 09_41_24.png (showing sort-by-task secondary sort key bug) Tom Clegg, 06/16/2014 09:42 AM

Subtasks 3 (0 open3 closed)

Task #2911: Add buttons to sort log rowsResolvedPeter Amstutz06/11/2014

Actions
Task #3008: Review 2883-job-log-viewerResolvedPeter Amstutz06/11/2014

Actions
Task #2910: Split job log into columnsResolvedPeter Amstutz06/11/2014

Actions
Actions

Also available in: Atom PDF