修改错误日志
This commit is contained in:
+4
-1
@@ -170,8 +170,11 @@ app.configure(ALL_ENVS, 'activity', function () {
|
|||||||
function errorHandler(err: Error, msg: any, resp: any,
|
function errorHandler(err: Error, msg: any, resp: any,
|
||||||
session: FrontendOrBackendSession, cb: HandlerCallback) {
|
session: FrontendOrBackendSession, cb: HandlerCallback) {
|
||||||
const errCode = genCode(10);
|
const errCode = genCode(10);
|
||||||
if(err.message != 'globalFilter')
|
if(err.message == 'globalFilter') {
|
||||||
|
infologger.debug('global after ', msg && JSON.stringify(msg), resp && JSON.stringify(resp), session && session.get('roleId'));
|
||||||
|
} else {
|
||||||
errlogger.error(`${pinus.app.serverId} error handler \n msg[${JSON.stringify(msg)}] \n resp[${JSON.stringify(resp)}] \n sessionId:${JSON.stringify(session.export())} \n error 【${errCode}】 stack: ${err.stack}`);
|
errlogger.error(`${pinus.app.serverId} error handler \n msg[${JSON.stringify(msg)}] \n resp[${JSON.stringify(resp)}] \n sessionId:${JSON.stringify(session.export())} \n error 【${errCode}】 stack: ${err.stack}`);
|
||||||
|
}
|
||||||
|
|
||||||
if (!resp) {
|
if (!resp) {
|
||||||
resp = resResult(STATUS.GLOBAL_ERR, { errCode, stack: err.stack });
|
resp = resResult(STATUS.GLOBAL_ERR, { errCode, stack: err.stack });
|
||||||
|
|||||||
@@ -40,35 +40,35 @@ class Filter {
|
|||||||
|
|
||||||
if(!this.checkPassEncrypt(routeRecord.route)) {
|
if(!this.checkPassEncrypt(routeRecord.route)) {
|
||||||
msg = this.decryptMsg(msg, session);
|
msg = this.decryptMsg(msg, session);
|
||||||
if(!msg) return next(new Error('globalFilter'), resResult(STATUS.WRONG_PARMS));
|
if(!msg) return next(new Error('globalFilter'), resResult(STATUS.WRONG_PARMS, { route: routeRecord.route }));
|
||||||
|
|
||||||
if(!this.checkTimeStamp(msg)) return next(new Error('globalFilter'), resResult(STATUS.TIMESTAMP_ERR));
|
if(!this.checkTimeStamp(msg)) return next(new Error('globalFilter'), resResult(STATUS.TIMESTAMP_ERR, { route: routeRecord.route }));
|
||||||
if(!this.checkDuplicateAccess(msg)) return next(new Error('globalFilter'), resResult(STATUS.DUPLICATE_ACCESS))
|
if(!this.checkDuplicateAccess(msg)) return next(new Error('globalFilter'), resResult(STATUS.DUPLICATE_ACCESS, { route: routeRecord.route }))
|
||||||
}
|
}
|
||||||
|
|
||||||
// 访问频率控制
|
// 访问频率控制
|
||||||
if(!this.checkFrequency(routeRecord.route, msg, roleId)) {
|
if(!this.checkFrequency(routeRecord.route, msg, roleId)) {
|
||||||
return next(new Error('globalFilter'), resResult(STATUS.ACCESS_BUSY));
|
return next(new Error('globalFilter'), resResult(STATUS.ACCESS_BUSY, { route: routeRecord.route }));
|
||||||
}
|
}
|
||||||
if(!this.checkFunction(routeRecord.route)) {
|
if(!this.checkFunction(routeRecord.route)) {
|
||||||
return next(new Error('globalFilter'), resResult(STATUS.FUNCTION_CLOSE));
|
return next(new Error('globalFilter'), resResult(STATUS.FUNCTION_CLOSE, { route: routeRecord.route }));
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!checkRouteParam(routeRecord.route, msg)) {
|
if(!checkRouteParam(routeRecord.route, msg)) {
|
||||||
return next(new Error('globalFilter'), resResult(STATUS.WRONG_PARMS));
|
return next(new Error('globalFilter'), resResult(STATUS.WRONG_PARMS, { route: routeRecord.route }));
|
||||||
}
|
}
|
||||||
|
|
||||||
// 玩家屏蔽
|
// 玩家屏蔽
|
||||||
if(blockType == BLOCK_TYPE.BLOCK) return next(new Error('globalFilter'), resResult(STATUS.BLOCKED));
|
if(blockType == BLOCK_TYPE.BLOCK) return next(new Error('globalFilter'), resResult(STATUS.BLOCKED, { route: routeRecord.route }));
|
||||||
if(blockType == BLOCK_TYPE.BAN && this.checkBanRoute(routeRecord.route)) {
|
if(blockType == BLOCK_TYPE.BAN && this.checkBanRoute(routeRecord.route)) {
|
||||||
return next(new Error('globalFilter'), resResult(STATUS.BANNED));
|
return next(new Error('globalFilter'), resResult(STATUS.BANNED, { route: routeRecord.route }));
|
||||||
}
|
}
|
||||||
|
|
||||||
session.push('teamCode', () => {});
|
session.push('teamCode', () => {});
|
||||||
|
|
||||||
if(isCheckWord(isDevelopEnv())) {
|
if(isCheckWord(isDevelopEnv())) {
|
||||||
let hasNoBlockWords = this.checkHasBlockWord(routeRecord.route, msg, roleId, serverId, guildCode);
|
let hasNoBlockWords = this.checkHasBlockWord(routeRecord.route, msg, roleId, serverId, guildCode);
|
||||||
if(!hasNoBlockWords) return next(new Error('globalFilter'), resResult(STATUS.BLOCK_WORDS));
|
if(!hasNoBlockWords) return next(new Error('globalFilter'), resResult(STATUS.BLOCK_WORDS, { route: routeRecord.route }));
|
||||||
}
|
}
|
||||||
|
|
||||||
if(routeRecord.route == 'guild.guildHandler.createGuild') {
|
if(routeRecord.route == 'guild.guildHandler.createGuild') {
|
||||||
@@ -78,7 +78,7 @@ class Filter {
|
|||||||
|
|
||||||
if(await this.checkMainten(serverId, sid, ip, uid)) {
|
if(await this.checkMainten(serverId, sid, ip, uid)) {
|
||||||
sendMessageToUser(roleId, PUSH_ROUTE.SERVER_MAINTENANCE, resResult(STATUS.SERVER_MAINTENANCE), sid);
|
sendMessageToUser(roleId, PUSH_ROUTE.SERVER_MAINTENANCE, resResult(STATUS.SERVER_MAINTENANCE), sid);
|
||||||
return next(new Error('globalFilter'), resResult(STATUS.SERVER_MAINTENANCE));
|
return next(new Error('globalFilter'), resResult(STATUS.SERVER_MAINTENANCE, { route: routeRecord.route }));
|
||||||
}
|
}
|
||||||
|
|
||||||
next(null);
|
next(null);
|
||||||
|
|||||||
@@ -467,9 +467,11 @@ export function checkRouteParam(route: string, msg: any) {
|
|||||||
if(!checkNaturalStrings(teamCode)) return false;
|
if(!checkNaturalStrings(teamCode)) return false;
|
||||||
if(!checkNumberArray(killed)) return false;
|
if(!checkNumberArray(killed)) return false;
|
||||||
if(!checkNaturalNumbers(curRnd)) return false;
|
if(!checkNaturalNumbers(curRnd)) return false;
|
||||||
if(!checkNaturalArray(bossHurts)) return false;
|
if(!checkArrayCanEmpty(bossHurts)) return false;
|
||||||
for(let { hid, dataId, hurtHp } of bossHurts) {
|
for(let { hid, dataId, hurtHp } of bossHurts) {
|
||||||
if(!checkNaturalNumbers(hid, dataId, hurtHp)) return false;
|
if(hid && !checkNaturalNumbers(hid)) return false;
|
||||||
|
if(!checkNaturalNumbers(dataId)) return false;
|
||||||
|
if(!isNumber(hurtHp)) return false
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -713,8 +715,8 @@ export function checkRouteParam(route: string, msg: any) {
|
|||||||
{
|
{
|
||||||
if(!checkNaturalNumbers(msg.warId)) return false;
|
if(!checkNaturalNumbers(msg.warId)) return false;
|
||||||
if(!checkArrayCanEmpty(msg.heroes)) return false;
|
if(!checkArrayCanEmpty(msg.heroes)) return false;
|
||||||
for(let { actorId, ai, dataId, order } of msg.heroes) {
|
for(let { actorId, dataId, order } of msg.heroes) {
|
||||||
if(!checkNaturalNumbers(actorId, ai, dataId, order)) return false;
|
if(!checkNaturalNumbers(actorId, dataId, order)) return false;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -92,7 +92,7 @@ export async function sendMessageToUsers(route: string, data: any, uids: { uid:
|
|||||||
|
|
||||||
export async function sendMessageToTeam(teamCode: string, route: string, data: any) {
|
export async function sendMessageToTeam(teamCode: string, route: string, data: any) {
|
||||||
const channel = pinus.app.get('channelService').getChannel(teamCode);
|
const channel = pinus.app.get('channelService').getChannel(teamCode);
|
||||||
sendMessageToChannel(channel, route, resResult(STATUS.SUCCESS, encryptMsg(route, data)));
|
sendMessageToChannel(channel, route, resResult(STATUS.SUCCESS, data));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
Reference in New Issue
Block a user