projects
/
arvados.git
/ blobdiff
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
11454: On /search & /sessions page, check if the current user is
[arvados.git]
/
apps
/
workbench
/
app
/
assets
/
javascripts
/
log_viewer.js
diff --git
a/apps/workbench/app/assets/javascripts/log_viewer.js
b/apps/workbench/app/assets/javascripts/log_viewer.js
index aa6ba791b2dde09de6f7fb4524eb2482b3c4006a..b201ed7f105229488763c64d49c2761eb17312a0 100644
(file)
--- a/
apps/workbench/app/assets/javascripts/log_viewer.js
+++ b/
apps/workbench/app/assets/javascripts/log_viewer.js
@@
-1,3
+1,7
@@
+// Copyright (C) The Arvados Authors. All rights reserved.
+//
+// SPDX-License-Identifier: AGPL-3.0
+
function newTaskState() {
return {"complete_count": 0,
"failure_count": 0,
function newTaskState() {
return {"complete_count": 0,
"failure_count": 0,
@@
-10,11
+14,12
@@
function addToLogViewer(logViewer, lines, taskState) {
var re = /((\d\d\d\d)-(\d\d)-(\d\d))_((\d\d):(\d\d):(\d\d)) ([a-z0-9]{5}-[a-z0-9]{5}-[a-z0-9]{15}) (\d+) (\d+)? (.*)/;
var items = [];
var re = /((\d\d\d\d)-(\d\d)-(\d\d))_((\d\d):(\d\d):(\d\d)) ([a-z0-9]{5}-[a-z0-9]{5}-[a-z0-9]{15}) (\d+) (\d+)? (.*)/;
var items = [];
+ var count = logViewer.items.length;
for (var a in lines) {
var v = lines[a].match(re);
if (v != null) {
for (var a in lines) {
var v = lines[a].match(re);
if (v != null) {
- var ts = new Date(Date.UTC(v[2], v[3], v[4], v[6], v[7], v[8]));
+ var ts = new Date(Date.UTC(v[2], v[3]
-1
, v[4], v[6], v[7], v[8]));
v11 = v[11];
if (typeof v[11] === 'undefined') {
v11 = v[11];
if (typeof v[11] === 'undefined') {
@@
-41,7
+46,7
@@
function addToLogViewer(logViewer, lines, taskState) {
} else if (/^srun: /.test(message) || /^slurmd/.test(message)) {
type = "task-dispatch";
} else {
} else if (/^srun: /.test(message) || /^slurmd/.test(message)) {
type = "task-dispatch";
} else {
- type = "task-
outpu
t";
+ type = "task-
prin
t";
}
} else {
var m;
}
} else {
var m;
@@
-82,17
+87,18
@@
function addToLogViewer(logViewer, lines, taskState) {
}
items.push({
}
items.push({
- id:
logViewer.items.length
,
+ id:
count
,
ts: ts,
timestamp: ts.toLocaleDateString() + " " + ts.toLocaleTimeString(),
taskid: v11,
node: node,
slot: slot,
ts: ts,
timestamp: ts.toLocaleDateString() + " " + ts.toLocaleTimeString(),
taskid: v11,
node: node,
slot: slot,
- message: message,
+ message: message
.replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>')
,
type: type
});
type: type
});
+ count += 1;
} else {
} else {
- console.log("Did not parse: " + lines[a]);
+ console.log("Did not parse
line " + a + "
: " + lines[a]);
}
}
logViewer.add(items);
}
}
logViewer.add(items);
@@
-182,9
+188,6
@@
function generateJobOverview(id, logViewer, taskState) {
var html = "";
if (logViewer.items.length > 2) {
var html = "";
if (logViewer.items.length > 2) {
- html += "<p>";
- html += "Started at " + first.values().timestamp;
-
var first = logViewer.items[1];
var last = logViewer.items[logViewer.items.length-1];
var duration = (last.values().ts.getTime() - first.values().ts.getTime()) / 1000;
var first = logViewer.items[1];
var last = logViewer.items[logViewer.items.length-1];
var duration = (last.values().ts.getTime() - first.values().ts.getTime()) / 1000;
@@
-205,7
+208,9
@@
function generateJobOverview(id, logViewer, taskState) {
var tcount = taskState.task_count;
var tcount = taskState.task_count;
- html += ". Ran " + dumbPluralize(tcount, " task") + " over ";
+ html += "<p>";
+ html += "Started at " + first.values().timestamp + ". ";
+ html += "Ran " + dumbPluralize(tcount, " task") + " over ";
if (hours > 0) {
html += dumbPluralize(hours, " hour");
}
if (hours > 0) {
html += dumbPluralize(hours, " hour");
}