增加错误捕获
This commit is contained in:
parent
c2b1a6cb0b
commit
b75e7155b8
@ -1,6 +1,15 @@
|
|||||||
import { Db, MongoClient } from "mongodb";
|
import { Db, MongoClient } from "mongodb";
|
||||||
|
|
||||||
let logDB:Db;
|
let logDB:Db;
|
||||||
|
let errorLogDB:Db;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 是否是G123的测试服
|
||||||
|
*/
|
||||||
|
function isG123stg(){
|
||||||
|
return G.config.mongodbUrl.indexOf('.stg.')!=-1;
|
||||||
|
}
|
||||||
|
|
||||||
async function connGameLogDB() {
|
async function connGameLogDB() {
|
||||||
console.log('connect gamelog mongodb ......');
|
console.log('connect gamelog mongodb ......');
|
||||||
let logDBUrl:string;
|
let logDBUrl:string;
|
||||||
@ -14,9 +23,39 @@ async function connGameLogDB() {
|
|||||||
maxIdleTimeMS: 5*60*1000
|
maxIdleTimeMS: 5*60*1000
|
||||||
});
|
});
|
||||||
logDB = client.db(`gameLog${G.config.serverId}`);
|
logDB = client.db(`gameLog${G.config.serverId}`);
|
||||||
|
errorLogDB = client.db(`nodeJsErrorLog`);
|
||||||
|
|
||||||
return logDB;
|
return logDB;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
process.on('uncaughtException',function(err:Error){
|
||||||
|
addErrorLog((err.stack).toString());
|
||||||
|
})
|
||||||
|
|
||||||
|
process.on('unhandledRejection', function (err:Error, promise) {
|
||||||
|
addErrorLog((err.stack).toString());
|
||||||
|
})
|
||||||
|
|
||||||
|
async function addErrorLog(errData:any){
|
||||||
|
try{
|
||||||
|
//g123测试版连接不上db,不抓取
|
||||||
|
if(isG123stg())return;
|
||||||
|
let log = {
|
||||||
|
serverId : G.config.serverId,
|
||||||
|
pid : process.pid,
|
||||||
|
cTime : Math.floor(Date.now()/1000),
|
||||||
|
error: errData
|
||||||
|
}
|
||||||
|
if(!errorLogDB){
|
||||||
|
await connGameLogDB();
|
||||||
|
}
|
||||||
|
errorLogDB.collection('nodeJsErrorLog').insertOne(log);
|
||||||
|
}catch(e){
|
||||||
|
console.error('addErrorLog',e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 增加游戏日志
|
* 增加游戏日志
|
||||||
* @param uid 玩家uid
|
* @param uid 玩家uid
|
||||||
@ -27,6 +66,9 @@ async function connGameLogDB() {
|
|||||||
|
|
||||||
export async function addGameLog(uid:string, type:string, req:any, data:any){
|
export async function addGameLog(uid:string, type:string, req:any, data:any){
|
||||||
try{
|
try{
|
||||||
|
//g123测试版连接不上db,不抓取
|
||||||
|
if(isG123stg())return;
|
||||||
|
|
||||||
if(!logDB){
|
if(!logDB){
|
||||||
await connGameLogDB();
|
await connGameLogDB();
|
||||||
}
|
}
|
||||||
@ -38,7 +80,6 @@ export async function addGameLog(uid:string, type:string, req:any, data:any){
|
|||||||
}
|
}
|
||||||
//事件时间
|
//事件时间
|
||||||
log['cTime'] = Math.floor(Date.now()/1000);
|
log['cTime'] = Math.floor(Date.now()/1000);
|
||||||
|
|
||||||
logDB.collection('gameLog').insertOne(log);
|
logDB.collection('gameLog').insertOne(log);
|
||||||
}catch(e){
|
}catch(e){
|
||||||
console.error('addGameLog',e);
|
console.error('addGameLog',e);
|
||||||
|
Loading…
Reference in New Issue
Block a user