Compare commits
2 Commits
71c0506a72
...
17ae62472e
Author | SHA1 | Date | |
---|---|---|---|
17ae62472e | |||
b75e7155b8 |
@ -1,6 +1,15 @@
|
||||
import { Db, MongoClient } from "mongodb";
|
||||
|
||||
let logDB:Db;
|
||||
let errorLogDB:Db;
|
||||
|
||||
/**
|
||||
* 是否是G123的测试服
|
||||
*/
|
||||
function isG123stg(){
|
||||
return G.config.mongodbUrl.indexOf('.stg.')!=-1;
|
||||
}
|
||||
|
||||
async function connGameLogDB() {
|
||||
console.log('connect gamelog mongodb ......');
|
||||
let logDBUrl:string;
|
||||
@ -14,9 +23,39 @@ async function connGameLogDB() {
|
||||
maxIdleTimeMS: 5*60*1000
|
||||
});
|
||||
logDB = client.db(`gameLog${G.config.serverId}`);
|
||||
errorLogDB = client.db(`nodeJsErrorLog`);
|
||||
|
||||
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
|
||||
@ -27,6 +66,9 @@ async function connGameLogDB() {
|
||||
|
||||
export async function addGameLog(uid:string, type:string, req:any, data:any){
|
||||
try{
|
||||
//g123测试版连接不上db,不抓取
|
||||
if(isG123stg())return;
|
||||
|
||||
if(!logDB){
|
||||
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);
|
||||
|
||||
logDB.collection('gameLog').insertOne(log);
|
||||
}catch(e){
|
||||
console.error('addGameLog',e);
|
||||
|
Loading…
Reference in New Issue
Block a user