mirror of
https://github.com/gSpotx2f/ruantiblock_openwrt.git
synced 2026-05-14 14:40:58 +00:00
luci-app: update abstract-log.js, log.js
This commit is contained in:
@@ -15,35 +15,35 @@ return abc.view.extend({
|
||||
entriesHandler : null,
|
||||
|
||||
// logd
|
||||
logdHandler: function(strArray, lineNum) {
|
||||
logdHandler(strArray, lineNum) {
|
||||
let logLevel = strArray[5].split('.');
|
||||
return [
|
||||
lineNum, // # (Number)
|
||||
strArray.slice(0, 5).join(' '), // Timestamp (String)
|
||||
null, // Host (String)
|
||||
logLevel[1], // Level (String)
|
||||
logLevel[0], // Facility (String)
|
||||
logLevel[1], // Level (String)
|
||||
this.htmlEntities(strArray.slice(6).join(' ')), // Message (String)
|
||||
];
|
||||
},
|
||||
|
||||
// syslog-ng
|
||||
syslog_ngHandler: function(strArray, lineNum) {
|
||||
syslog_ngHandler(strArray, lineNum) {
|
||||
if(!(strArray[3] in this.logHosts)) {
|
||||
this.logHosts[strArray[3]] = this.makelogHostsDropdownItem(strArray[3]);
|
||||
this.logHosts[strArray[3]] = this.makeLogHostsDropdownItem(strArray[3]);
|
||||
};
|
||||
|
||||
return [
|
||||
lineNum, // # (Number)
|
||||
strArray.slice(0, 3).join(' '), // Timestamp (String)
|
||||
strArray[3], // Host (String)
|
||||
null, // Level (String)
|
||||
null, // Facility (String)
|
||||
null, // Level (String)
|
||||
this.htmlEntities(strArray.slice(4).join(' ')), // Message (String)
|
||||
];
|
||||
},
|
||||
|
||||
getLogData: function(tail) {
|
||||
getLogData(tail) {
|
||||
return Promise.all([
|
||||
L.resolveDefault(fs.stat('/sbin/logread'), null),
|
||||
L.resolveDefault(fs.stat('/usr/sbin/logread'), null),
|
||||
@@ -51,7 +51,7 @@ return abc.view.extend({
|
||||
let logger = (stat[0]) ? stat[0].path : (stat[1]) ? stat[1].path : null;
|
||||
|
||||
if(logger) {
|
||||
return fs.exec_direct(logger, [ '-e', tools.appName + ':' ]).catch(err => {
|
||||
return fs.exec_direct(logger, [ '-e', tools.appName + ':' ], 'text').catch(err => {
|
||||
ui.addNotification(
|
||||
null, E('p', {}, _('Unable to load log data:') + ' ' + err.message));
|
||||
return '';
|
||||
@@ -60,12 +60,13 @@ return abc.view.extend({
|
||||
});
|
||||
},
|
||||
|
||||
parseLogData: function(logdata, tail) {
|
||||
parseLogData(logdata, tail) {
|
||||
if(!logdata) {
|
||||
return [];
|
||||
};
|
||||
|
||||
let strings = logdata.trim().split(/\n/);
|
||||
let unsupportedLog = false;
|
||||
let strings = logdata.trim().split(/\n/);
|
||||
|
||||
if(tail && tail > 0 && strings) {
|
||||
strings = strings.slice(-tail);
|
||||
@@ -73,21 +74,32 @@ return abc.view.extend({
|
||||
|
||||
this.totalLogLines = strings.length;
|
||||
|
||||
let entriesArray = strings.map((e, i) => {
|
||||
let strArray = e.split(/\s+/);
|
||||
let entriesArray = strings.map((e, i) => {
|
||||
let strArray = e.split(/\s+/);
|
||||
|
||||
if(!this.isLoggerChecked) {
|
||||
/**
|
||||
* Checking the fourth field of a line.
|
||||
* If it contains time then logd.
|
||||
*/
|
||||
if(this.testRegexp.test(strArray[3])) {
|
||||
this.isFacilities = true;
|
||||
this.isLevels = true;
|
||||
this.logHosts = {};
|
||||
this.entriesHandler = this.logdHandler;
|
||||
}
|
||||
/**
|
||||
* Checking the third field of a line.
|
||||
* If it contains time then syslog-ng.
|
||||
*/
|
||||
if(this.testRegexp.test(strArray[2])) {
|
||||
else if(this.testRegexp.test(strArray[2])) {
|
||||
this.isHosts = true;
|
||||
this.logFacilities = {};
|
||||
this.logLevels = {};
|
||||
this.entriesHandler = this.syslog_ngHandler;
|
||||
} else {
|
||||
this.isLevels = true;
|
||||
this.entriesHandler = this.logdHandler;
|
||||
unsupportedLog = true;
|
||||
return;
|
||||
};
|
||||
this.isLoggerChecked = true;
|
||||
};
|
||||
@@ -95,10 +107,18 @@ return abc.view.extend({
|
||||
return this.entriesHandler(strArray, i + 1);
|
||||
});
|
||||
|
||||
if(this.logSortingValue === 'desc') {
|
||||
entriesArray.reverse();
|
||||
};
|
||||
if(unsupportedLog) {
|
||||
ui.addNotification(
|
||||
null,
|
||||
E('p', {}, _('Unable to load log data:') + ' ' + _('Unsupported log format'))
|
||||
);
|
||||
return [];
|
||||
} else {
|
||||
if(this.logSortingValue === 'desc') {
|
||||
entriesArray.reverse();
|
||||
};
|
||||
|
||||
return entriesArray;
|
||||
return entriesArray;
|
||||
};
|
||||
},
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user