meshcentral
Version:
Web based remote computer management server
1 lines • 2.42 kB
JavaScript
function parseLine(f){var n=f.match(/^\[.*M\]/);if(n==null){n=f.match(/\[.+ => .+:[0-9]+\]/);if(n!=null){var g=n[0].substring(1).match(/(?!.+ ).+(?=:)/);var j=n[0].match(/(?!:)[0-9]+(?=\]$)/);var h=n[0].match(/(?!\[).+(?= =>)/);if(g!=null){this.results.peek().f=g[0].trim()}if(j!=null){this.results.peek().l=j[0]}if(h!=null){this.results.peek().fn=h[0]}}else{n=f.match(/^[\.\/].+\(\) \[0x[0-9a-fA-F]+\]$/);if(n!=null){n=n[0].match(/(?!\[)0x[0-9a-fA-F]+(?=\]$)/);if(n!=null){if(this.results.peek().sx==null){this.results.peek().sx=[]}this.results.peek().sx.unshift(n[0])}}else{n=f.match(/^\[.+_[0-9a-fA-F]{16}\]$/);if(n!=null){n=n[0].match(/(?!_)[0-9a-fA-F]{16}(?=\]$)/);this.results.peek().h=n[0]}}n=f.match(/(?!^=>)\/+.+:[0-9]+$/);if(n!=null){if(this.results.peek().s==null){this.results.peek().s=[]}this.results.peek().s.unshift(n[0])}}return}n=n[0];var e=n.substring(1,n.length-1);var a=e.split(" ");var m=a[1].split(":");if(a[2]=="PM"){m[0]=parseInt(m[0])+12;if(m[0]==24){m[0]=0}}var b=Date.parse(a[0]+"T"+m.join(":"));var l=f.substring(n.length).trim();var i=l.match(/^\[[0-9a-fA-F]{16}\]/);if(i!=null){i=i[0].substring(1,i[0].length-1);l=l.substring(i.length+2).trim()}else{i=l.match(/^\[\]/);if(i!=null){l=l.substring(2).trim();i=null}}var k={t:Math.floor(b/1000),m:l};if(i!=null){k.h=i}n=l.match(/^.+:[0-9]+ \([0-9]+,[0-9]+\)/);if(n!=null){k.m=k.m.substring(n[0].length).trim();k.f=n[0].match(/^.+(?=:[0-9]+)/)[0];k.l=n[0].match(/(?!:)[0-9]+(?= \([0-9]+,[0-9]+\)$)/)[0]}this.results.push(k)}function readLog_data(a){var c=a.toString();if(this.buffered!=null){c=this.buffered+c}c=c.split("\n");var b;for(b=0;b<(c.length-1);++b){parseLine.call(this,c[b])}if(c.length==1){parseLine.call(this,c[0]);this.buffered=null}else{this.buffered=c[c.length-1]}}function readLogEx(a){var b=[];try{var c=require("fs").createReadStream(a);c.buffered=null;c.results=b;c.on("data",readLog_data);c.resume();if(c.buffered!=null){readLog_data.call(c,c.buffered);c.buffered=null}c.removeAllListeners("data");c=null}catch(d){}return(b)}function readLog(a,e){var d=readLogEx(e==null?(process.execPath.split(".exe").join("")+".log"):e);var f=[];if(typeof(a)=="string"){try{var b=Date.parse(a);a=Math.floor(b/1000)}catch(g){}}if(typeof(a)=="number"){if(a<1000){f=d.slice(d.length-((a>d.length)?d.length:a))}else{var c;for(c=0;c<d.length&&d[c].t<=a;++c){}f=d.slice(c)}}else{f=d}return(f)}module.exports={read:readLog,readEx:readLogEx};