dont log amt wsman events and fix start/end times in recordings
Signed-off-by: si458 <simonsmith5521@gmail.com>
si458 committed
Apr 16, 2025 at 20:22 UTC
f029abb1f8f70f543a27e0c118ca9b138acadd92
3 files changed
+19
-21
views/default.handlebars
+1
-1
@@ -17503,7 +17503,7 @@
17503
if (rec.meshname) { x += addHtmlValue4("Device Group", EscapeHtml(rec.meshname)); }
17504
if (rec.size) { x += addHtmlValue4("Size", format("{0} bytes", rec.size)); }
17505
if (rec.startTime) { x += addHtmlValue4("Start Time", printTime(new Date(rec.startTime))); }
17506
- if (rec.time) { x += addHtmlValue4("End Time", printTime(new Date(rec.time))); }
17506
+ if (rec.startTime && rec.lengthTime) { x += addHtmlValue4("End Time", printTime(new Date(rec.startTime + (rec.lengthTime * 1000)))); }
17507
if (rec.lengthTime) { x += addHtmlValue4("Duration", pad2(Math.floor(rec.lengthTime / 3600)) + ':' + pad2(Math.floor((rec.lengthTime % 3600) / 60)) + ':' + pad2(Math.floor(rec.lengthTime % 60))); }
17508
if (rec.multiplex == true) { x += addHtmlValue4("Multiplexor", "Enabled"); }
17509
if (rec.userids) { for (var i in rec.userids) { x += addHtmlValue4("User", rec.userids[i].split('/')[2]); } }
views/default3.handlebars
+1
-1
@@ -18769,7 +18769,7 @@
18769
if (rec.meshname) { x += addHtmlValue4("Device Group", EscapeHtml(rec.meshname)); }
18770
if (rec.size) { x += addHtmlValue4("Size", format("{0} bytes", rec.size)); }
18771
if (rec.startTime) { x += addHtmlValue4("Start Time", printTime(new Date(rec.startTime))); }
18772
- if (rec.time) { x += addHtmlValue4("End Time", printTime(new Date(rec.time))); }
18772
+ if (rec.startTime && rec.lengthTime) { x += addHtmlValue4("End Time", printTime(new Date(rec.startTime + (rec.lengthTime * 1000)))); }
18773
if (rec.lengthTime) { x += addHtmlValue4("Duration", pad2(Math.floor(rec.lengthTime / 3600)) + ':' + pad2(Math.floor((rec.lengthTime % 3600) / 60)) + ':' + pad2(Math.floor(rec.lengthTime % 60))); }
18774
if (rec.multiplex == true) { x += addHtmlValue4("Multiplexor", "Enabled"); }
18775
if (rec.userids) { for (var i in rec.userids) { x += addHtmlValue4("User", rec.userids[i].split('/')[2]); } }
webserver.js
+17
-19
@@ -4953,12 +4953,12 @@ module.exports.CreateWebServer = function (parent, db, args, certificates, doneF
4953
4954
// Log the disconnection
4955
if (ws.time) {
4956
- var msg = 'Ended relay session', msgid = 9, ip = ((ciraconn != null) ? ciraconn.remoteAddr : (((conn & 4) != 0) ? node.host : req.clientIp));
4957
- var nodeid = node._id;
4958
- var meshid = node.meshid;
4959
- if (user) {
4960
- var event = { etype: 'relay', action: 'relaylog', domain: domain.id, userid: user._id, username: user.name, msgid: msgid, msgArgs: [ws.id, req.clientIp, ip, Math.floor((Date.now() - ws.time) / 1000)], msg: msg + ' \"' + ws.id + '\" from ' + req.clientIp + ' to ' + ip + ', ' + Math.floor((Date.now() - ws.time) / 1000) + ' second(s)', protocol: ((req.query.p == 2) ? 101 : 100), nodeid: nodeid };
4961
- obj.parent.DispatchEvent(['*', user._id, nodeid, meshid], obj, event);
4956
+ if (req.query.p == 2) { // Only log event if Intel Redirection, otherwise hundreds of logs for WSMAN are recorded
4957
+ var msg = 'Ended relay session', msgid = 9, ip = ((ciraconn != null) ? ciraconn.remoteAddr : (((conn & 4) != 0) ? node.host : req.clientIp));
4958
+ if (user) {
4959
+ var event = { etype: 'relay', action: 'relaylog', domain: domain.id, userid: user._id, username: user.name, msgid: msgid, msgArgs: [ws.id, req.clientIp, ip, Math.floor((Date.now() - ws.time) / 1000)], msg: msg + ' \"' + ws.id + '\" from ' + req.clientIp + ' to ' + ip + ', ' + Math.floor((Date.now() - ws.time) / 1000) + ' second(s)', protocol: 101, nodeid: node._id };
4960
+ obj.parent.DispatchEvent(['*', user._id, node._id, node.meshid], obj, event);
4961
+ }
4962
}
4963
}
4964
@@ -4978,7 +4978,7 @@ module.exports.CreateWebServer = function (parent, db, args, certificates, doneF
4978
parent.debug('relay', 'Relay: Finished recording to file: ' + ws.logfile.filename);
4979
// Compute session length
4980
var sessionLength = null;
4981
- if (ws.logfile.startTime != null) { sessionLength = Math.round((Date.now() - ws.logfile.startTime) / 1000); }
4981
+ if (ws.logfile.startTime != null) { sessionLength = Math.round((Date.now() - ws.logfile.startTime) / 1000) - 5; }
4982
// Add a event entry about this recording
4983
var basefile = parent.path.basename(ws.logfile.filename);
4984
var event = { etype: 'relay', action: 'recording', domain: domain.id, nodeid: ws.logfile.nodeid, msg: "Finished recording session" + (sessionLength ? (', ' + sessionLength + ' second(s)') : ''), filename: basefile, size: ws.logfile.size };
@@ -5028,7 +5028,7 @@ module.exports.CreateWebServer = function (parent, db, args, certificates, doneF
5028
parent.debug('relay', 'Relay1: Finished recording to file: ' + ws.logfile.filename);
5029
// Compute session length
5030
var sessionLength = null;
5031
- if (ws.logfile.startTime != null) { sessionLength = Math.round((Date.now() - ws.logfile.startTime) / 1000); }
5031
+ if (ws.logfile.startTime != null) { sessionLength = Math.round((Date.now() - ws.logfile.startTime) / 1000) - 5; }
5032
// Add a event entry about this recording
5033
var basefile = parent.path.basename(ws.logfile.filename);
5034
var event = { etype: 'relay', action: 'recording', domain: domain.id, nodeid: ws.logfile.nodeid, msg: "Finished recording session" + (sessionLength ? (', ' + sessionLength + ' second(s)') : ''), filename: basefile, size: ws.logfile.size };
@@ -5087,11 +5087,9 @@ module.exports.CreateWebServer = function (parent, db, args, certificates, doneF
5087
// Log the disconnection
5088
if (ws.time) {
5089
var msg = 'Ended relay session', msgid = 9, ip = ((ciraconn != null) ? ciraconn.remoteAddr : (((conn & 4) != 0) ? node.host : req.clientIp));
5090
- var nodeid = node._id;
5091
- var meshid = node.meshid;
5090
if (user) {
5093
- var event = { etype: 'relay', action: 'relaylog', domain: domain.id, userid: user._id, username: user.name, msgid: msgid, msgArgs: [ws.id, req.clientIp, ip, Math.floor((Date.now() - ws.time) / 1000)], msg: msg + ' \"' + ws.id + '\" from ' + req.clientIp + ' to ' + ip + ', ' + Math.floor((Date.now() - ws.time) / 1000) + ' second(s)', protocol: ((req.query.p == 2) ? 101 : 100), nodeid: nodeid };
5094
- obj.parent.DispatchEvent(['*', user._id, nodeid, meshid], obj, event);
5091
+ var event = { etype: 'relay', action: 'relaylog', domain: domain.id, userid: user._id, username: user.name, msgid: msgid, msgArgs: [ws.id, req.clientIp, ip, Math.floor((Date.now() - ws.time) / 1000)], msg: msg + ' \"' + ws.id + '\" from ' + req.clientIp + ' to ' + ip + ', ' + Math.floor((Date.now() - ws.time) / 1000) + ' second(s)', protocol: ((req.query.p == 2) ? 101 : 100), nodeid: node._id };
5092
+ obj.parent.DispatchEvent(['*', user._id, node._id, node.meshid], obj, event);
5093
}
5094
}
5095
if (ws.forwardclient) { try { ws.forwardclient.destroy(); } catch (e) { } }
@@ -5129,11 +5127,9 @@ module.exports.CreateWebServer = function (parent, db, args, certificates, doneF
5127
// Log the disconnection
5128
if (ws.time) {
5129
var msg = 'Ended relay session', msgid = 9, ip = ((ciraconn != null) ? ciraconn.remoteAddr : (((conn & 4) != 0) ? node.host : req.clientIp));
5132
- var nodeid = node._id;
5133
- var meshid = node.meshid;
5130
if (user) {
5135
- var event = { etype: 'relay', action: 'relaylog', domain: domain.id, userid: user._id, username: user.name, msgid: msgid, msgArgs: [ws.id, req.clientIp, ip, Math.floor((Date.now() - ws.time) / 1000)], msg: msg + ' \"' + ws.id + '\" from ' + req.clientIp + ' to ' + ip + ', ' + Math.floor((Date.now() - ws.time) / 1000) + ' second(s)', protocol: ((req.query.p == 2) ? 101 : 100), nodeid: nodeid };
5136
- obj.parent.DispatchEvent(['*', user._id, nodeid, meshid], obj, event);
5131
+ var event = { etype: 'relay', action: 'relaylog', domain: domain.id, userid: user._id, username: user.name, msgid: msgid, msgArgs: [ws.id, req.clientIp, ip, Math.floor((Date.now() - ws.time) / 1000)], msg: msg + ' \"' + ws.id + '\" from ' + req.clientIp + ' to ' + ip + ', ' + Math.floor((Date.now() - ws.time) / 1000) + ' second(s)', protocol: ((req.query.p == 2) ? 101 : 100), nodeid: node._id };
5132
+ obj.parent.DispatchEvent(['*', user._id, node._id, node.meshid], obj, event);
5133
}
5134
}
5135
if (ws.forwardclient) { try { ws.forwardclient.destroy(); } catch (e) { } }
@@ -5237,9 +5233,11 @@ module.exports.CreateWebServer = function (parent, db, args, certificates, doneF
5233
5234
// Log the connection
5235
if (user != null) {
5240
- var msg = 'Started relay session', msgid = 13, ip = ((ciraconn != null) ? ciraconn.remoteAddr : (((conn & 4) != 0) ? node.host : req.clientIp));
5241
- var event = { etype: 'relay', action: 'relaylog', domain: domain.id, userid: user._id, username: user.name, msgid: msgid, msgArgs: [ws.id, req.clientIp, ip], msg: msg + ' \"' + obj.id + '\" from ' + req.clientIp + ' to ' + ip, protocol: ((req.query.p == 2) ? 101 : 100), nodeid: node._id };
5242
- obj.parent.DispatchEvent(['*', user._id], obj, event);
5236
+ if (req.query.p == 2) { // Only log event if Intel Redirection, otherwise hundreds of logs for WSMAN are recorded
5237
+ var msg = 'Started relay session', msgid = 13, ip = ((ciraconn != null) ? ciraconn.remoteAddr : (((conn & 4) != 0) ? node.host : req.clientIp));
5238
+ var event = { etype: 'relay', action: 'relaylog', domain: domain.id, userid: user._id, username: user.name, msgid: msgid, msgArgs: [ws.id, req.clientIp, ip], msg: msg + ' \"' + ws.id + '\" from ' + req.clientIp + ' to ' + ip, protocol: 101, nodeid: node._id };
5239
+ obj.parent.DispatchEvent(['*', user._id], obj, event);
5240
+ }
5241
5242
// Update user last access time
5243
if ((user != null)) {