123456789101112131415161718192021222324252627282930313233343536 |
- 'use strict';
- /**
- * 自动记录日志
- *
- * @author CaiAoLin
- * @date 2017/10/30
- * @version
- */
- module.exports = options => {
- return async function autoFinishLogger(ctx, next) {
- await next();
- if (ctx.url.indexOf('/public/') === 0) return;
- const responseTime = new Date();
- const runTime = responseTime.getTime() - ctx.logTime.getTime();
- let logData;
- if (ctx.session && ctx.session.sessionUser) {
- logData = {
- requestTime: ctx.logTime, responseTime, runTime,
- user: ctx.session.sessionUser.accountId, userName: ctx.session.sessionUser.name, loginType: ctx.session.sessionUser.loginType,
- pCode: ctx.session.sessionProject.code,
- data: ctx.request.body,
- };
- } else {
- logData = {
- requestTime: ctx.logTime, responseTime, runTime,
- data: ctx.body,
- };
- }
- const bLogger = runTime > 500 ? ctx.getLogger('warning') : ctx.getLogger('finish');
- bLogger.info(JSON.stringify(logData));
- };
- };
|