日志:短链接记录
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
import { ENCRYPT_KEY, ENCRYPT_IV } from '@consts';
|
||||
import { genCode } from 'app/pubUtils/util';
|
||||
import { Context } from 'egg';
|
||||
const crypto = require('crypto');
|
||||
const isJSON = require('koa-is-json');
|
||||
@@ -21,6 +22,7 @@ module.exports = options => {
|
||||
return async function parmsDecode(ctx: Context, next) {
|
||||
let m = ctx.request.url.indexOf("/dev");
|
||||
let n = ctx.request.url.indexOf("/web");
|
||||
ctx.logcode = genCode(10);
|
||||
if(m == 0 || n == 0) {
|
||||
await next();
|
||||
return;
|
||||
@@ -47,17 +49,27 @@ module.exports = options => {
|
||||
try {
|
||||
ctx.request.body = JSON.parse(decodeStr);
|
||||
console.log('req body', ctx.request.body);
|
||||
ctx.service.utils.log('INFO', `[${ctx.request.url}] [${ctx.logcode}] request: ${JSON.stringify(ctx.request.body)}`)
|
||||
} catch (e) {
|
||||
console.error('parms parse err');
|
||||
ctx.service.utils.log('ERROR', `[${ctx.request.url}] [${ctx.logcode}] request: parms parse err`)
|
||||
|
||||
}
|
||||
|
||||
await next();
|
||||
try{
|
||||
await next();
|
||||
} catch(e) {
|
||||
ctx.service.utils.log('ERROR', `[${ctx.request.url}] [${ctx.logcode}] err: ${e.stack}`);
|
||||
throw e;
|
||||
}
|
||||
const resBody = ctx.body;
|
||||
console.log('return value:', JSON.stringify(resBody));
|
||||
if (isJSON(resBody)) {
|
||||
ctx.body = { result: aesEncrypt(JSON.stringify(resBody), ENCRYPT_KEY, ENCRYPT_IV) };
|
||||
ctx.service.utils.log('INFO', `[${ctx.request.url}] [${ctx.logcode}] res: ${JSON.stringify(resBody)}`)
|
||||
} else {
|
||||
ctx.body = { result: aesEncrypt(JSON.stringify({ status: 3, data: 'internal err' }), ENCRYPT_KEY, ENCRYPT_IV) };
|
||||
ctx.service.utils.log('ERROR', `[${ctx.request.url}] [${ctx.logcode}] res: ${resBody}`)
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
@@ -20,6 +20,8 @@ module.exports = () => {
|
||||
ctx.userCode = user.userCode;
|
||||
ctx.pkgName = user.pkgName;
|
||||
ctx.tel = user.tel;
|
||||
ctx.service.utils.log('INFO', `[${ctx.request.url}] [${ctx.logcode}] user: ${user.uid}`);
|
||||
|
||||
await next();
|
||||
};
|
||||
};
|
||||
|
||||
@@ -54,4 +54,18 @@ export default class Utils extends Service {
|
||||
public unlockFigure(roleId: string, conditions: {type: number, paramHid?: number, paramFavourLv?: number, paramSkinId?: number}[], role?: RoleType) {
|
||||
return unlockFigure(roleId, conditions, role);
|
||||
}
|
||||
|
||||
public log(level: 'DEBUG'|'INFO'|'WARN'| 'ERROR', message: string) {
|
||||
const log = this.app.loggers.get('linkLogger');
|
||||
|
||||
if(level == 'DEBUG') {
|
||||
log.error(`${message}`);
|
||||
} else if (level == 'INFO') {
|
||||
log.info(`${message}`);
|
||||
} else if (level == 'WARN') {
|
||||
log.warn(`${message}`);
|
||||
} else if (level == "ERROR") {
|
||||
log.error(`${message}`);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -47,7 +47,21 @@ export default (appInfo: EggAppInfo) => {
|
||||
dir: path.join(appInfo.baseDir, '/app/public'),
|
||||
};
|
||||
|
||||
config.customLogger = {
|
||||
linkLogger: {
|
||||
file: path.join(appInfo.root, 'logs/web-server/link-log.log'),
|
||||
formatter(meta) {
|
||||
return `[${meta.level}] [${meta.date}] ${meta.message}`;
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
config.logrotator = {
|
||||
filesRotateBySize: [
|
||||
path.join(appInfo.root, 'logs/link-log.log'),
|
||||
],
|
||||
maxFileSize: 1024,
|
||||
};
|
||||
// add your special config in here
|
||||
const bizConfig = {
|
||||
sourceUrl: `https://github.com/eggjs/examples/tree/master/${appInfo.name}`,
|
||||
|
||||
@@ -53,7 +53,22 @@ export default (appInfo: EggAppInfo) => {
|
||||
appSecret: 'a48ad5ca44e2d02cbd7f4c0326fa3101',
|
||||
error_log: [ '/root/logs/zyz/zyz-web.log', '/root/logs/zyz/common-error.log', '/root/logs/zyz/egg-agent.log' ],
|
||||
};
|
||||
|
||||
config.customLogger = {
|
||||
linkLogger: {
|
||||
file: path.join(appInfo.root, 'logs/web-server/link-log.log'),
|
||||
formatter(meta) {
|
||||
return `[${meta.level}] [${meta.date}] ${meta.message}`;
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
config.logrotator = {
|
||||
filesRotateBySize: [
|
||||
path.join(appInfo.root, 'logs/link-log.log'),
|
||||
],
|
||||
maxFileSize: 1024,
|
||||
};
|
||||
// add your special config in here
|
||||
const bizConfig = {
|
||||
sourceUrl: `https://github.com/eggjs/examples/tree/master/${appInfo.name}`,
|
||||
|
||||
@@ -46,7 +46,21 @@ export default (appInfo: EggAppInfo) => {
|
||||
prefix: '/',
|
||||
dir: path.join(appInfo.baseDir, '/app/public'),
|
||||
};
|
||||
config.customLogger = {
|
||||
linkLogger: {
|
||||
file: path.join(appInfo.root, 'logs/web-server/link-log.log'),
|
||||
formatter(meta) {
|
||||
return `[${meta.level}] [${meta.date}] ${meta.message}`;
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
config.logrotator = {
|
||||
filesRotateBySize: [
|
||||
path.join(appInfo.root, 'logs/link-log.log'),
|
||||
],
|
||||
maxFileSize: 1024,
|
||||
};
|
||||
|
||||
// add your special config in here
|
||||
const bizConfig = {
|
||||
|
||||
@@ -47,7 +47,21 @@ export default (appInfo: EggAppInfo) => {
|
||||
dir: path.join(appInfo.baseDir, '/app/public'),
|
||||
};
|
||||
|
||||
config.customLogger = {
|
||||
linkLogger: {
|
||||
file: path.join(appInfo.root, 'logs/web-server/link-log.log'),
|
||||
formatter(meta) {
|
||||
return `[${meta.level}] [${meta.date}] ${meta.message}`;
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
config.logrotator = {
|
||||
filesRotateBySize: [
|
||||
path.join(appInfo.root, 'logs/link-log.log'),
|
||||
],
|
||||
maxFileSize: 1024,
|
||||
};
|
||||
// add your special config in here
|
||||
const bizConfig = {
|
||||
sourceUrl: `https://github.com/eggjs/examples/tree/master/${appInfo.name}`,
|
||||
|
||||
@@ -40,13 +40,28 @@ export default (appInfo: EggAppInfo) => {
|
||||
},
|
||||
};
|
||||
|
||||
config.decodeParm = false;
|
||||
config.decodeParm = true;
|
||||
|
||||
config.static = {
|
||||
prefix: '/',
|
||||
dir: path.join(appInfo.baseDir, '/app/public'),
|
||||
};
|
||||
|
||||
config.customLogger = {
|
||||
linkLogger: {
|
||||
file: path.join(appInfo.root, 'logs/web-server/link-log.log'),
|
||||
formatter(meta) {
|
||||
return `[${meta.level}] [${meta.date}] ${meta.message}`;
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
config.logrotator = {
|
||||
filesRotateBySize: [
|
||||
path.join(appInfo.root, 'logs/link-log.log'),
|
||||
],
|
||||
maxFileSize: 1024,
|
||||
};
|
||||
|
||||
// add your special config in here
|
||||
const bizConfig = {
|
||||
|
||||
@@ -47,7 +47,21 @@ export default (appInfo: EggAppInfo) => {
|
||||
dir: path.join(appInfo.baseDir, '/app/public'),
|
||||
};
|
||||
|
||||
config.customLogger = {
|
||||
linkLogger: {
|
||||
file: path.join(appInfo.root, 'logs/web-server/link-log.log'),
|
||||
formatter(meta) {
|
||||
return `[${meta.level}] [${meta.date}] ${meta.message}`;
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
config.logrotator = {
|
||||
filesRotateBySize: [
|
||||
path.join(appInfo.root, 'logs/link-log.log'),
|
||||
],
|
||||
maxFileSize: 1024,
|
||||
};
|
||||
// add your special config in here
|
||||
const bizConfig = {
|
||||
sourceUrl: `https://github.com/eggjs/examples/tree/master/${appInfo.name}`,
|
||||
|
||||
@@ -34,6 +34,7 @@
|
||||
"egg-scripts": "^2.6.0",
|
||||
"egg-view-nunjucks": "^2.2.0",
|
||||
"egg-xtransit": "^1.2.2",
|
||||
"moment": "^2.29.1",
|
||||
"mongoose-transactions": "^1.1.4",
|
||||
"reflect-metadata": "^0.1.13",
|
||||
"request": "^2.88.2",
|
||||
|
||||
Reference in New Issue
Block a user