|
@@ -11,6 +11,7 @@ const os = require('os');
|
|
|
|
|
|
module.exports = options => {
|
|
|
return function* autoLogger(next) {
|
|
|
+ this.logId = this.app.uuid.v1();
|
|
|
// 记录业务日志
|
|
|
function getBussinessLogger(ctx) {
|
|
|
if (ctx.url.match(/ledger/)) {
|
|
@@ -21,46 +22,29 @@ module.exports = options => {
|
|
|
return ctx.getLogger('mixed');
|
|
|
}
|
|
|
|
|
|
- const bLogger = getBussinessLogger(this);
|
|
|
- if (this.session.sessionUser) {
|
|
|
- const logData = {
|
|
|
- method: this.method,
|
|
|
- user: this.session.sessionUser,
|
|
|
- project: this.session.sessionProject,
|
|
|
- data: this.request.body,
|
|
|
- };
|
|
|
- bLogger.info(JSON.stringify(logData));
|
|
|
- } else {
|
|
|
- const logData = {
|
|
|
- method: this.method,
|
|
|
- data: this.body,
|
|
|
- };
|
|
|
- bLogger.info(JSON.stringify(logData));
|
|
|
+ if (this.url.indexOf('/public/') !== 0) {
|
|
|
+ const bLogger = getBussinessLogger(this);
|
|
|
+ if (this.session.sessionUser) {
|
|
|
+ const logData = {
|
|
|
+ method: this.method,
|
|
|
+ user: this.session.sessionUser,
|
|
|
+ project: this.session.sessionProject,
|
|
|
+ data: this.request.body,
|
|
|
+ };
|
|
|
+ bLogger.info(JSON.stringify(logData));
|
|
|
+ } else {
|
|
|
+ const logData = {
|
|
|
+ method: this.method,
|
|
|
+ data: this.body,
|
|
|
+ };
|
|
|
+ bLogger.info(JSON.stringify(logData));
|
|
|
+ }
|
|
|
+ this.logInfo = { id: this.logId, time: new Date() };
|
|
|
+ const cpus = os.cpus();
|
|
|
+ this.logInfo.cpus = cpus.map(x => {
|
|
|
+ return `${((1-x.times.idle/(x.times.idle+x.times.user+x.times.nice+x.times.sys+x.times.irq))*100).toFixed(2)}%`
|
|
|
+ });
|
|
|
}
|
|
|
- this.logInfo = { time: new Date() };
|
|
|
- const cpus = os.cpus();
|
|
|
- this.logInfo.cpus = cpus.map(x => {
|
|
|
- return `${((1-x.times.idle/(x.times.idle+x.times.user+x.times.nice+x.times.sys+x.times.irq))*100).toFixed(2)}%`
|
|
|
- });
|
|
|
-
|
|
|
- // 自动记录log的action
|
|
|
- // const autoLogAction = ['save', 'delete'];
|
|
|
- // if (this.actionName !== undefined && autoLogAction.indexOf(this.actionName) >= 0) {
|
|
|
- // // 操作数据的id
|
|
|
- // const idReg = /\/(\d+)/;
|
|
|
- // const paramInfo = this.request.originalUrl.match(idReg);
|
|
|
- // let targetId = paramInfo[1] !== undefined ? paramInfo[1] : -1;
|
|
|
- // targetId = parseInt(targetId);
|
|
|
- //
|
|
|
- // const logData = {
|
|
|
- // controller: this.controllerName,
|
|
|
- // action: this.actionName,
|
|
|
- // operation: this.currentName === undefined ? '保存数据' : this.currentName,
|
|
|
- // target_id: targetId,
|
|
|
- // };
|
|
|
- // yield this.service.log.addLog(logData);
|
|
|
- // }
|
|
|
-
|
|
|
yield next;
|
|
|
};
|
|
|
};
|