118 lines
2.3 KiB
JavaScript
118 lines
2.3 KiB
JavaScript
'use strict';
|
|
import fs from 'fs-extra';
|
|
import FileStreamRotator from 'file-stream-rotator';
|
|
import bunyan from 'bunyan';
|
|
import config from '../../config/config'
|
|
import Logs from '../model/Logs'
|
|
|
|
const env = process.env.NODE_ENV || 'production';
|
|
const isDev = env === 'development';
|
|
// const env = process.env.NODE_ENV || 'development';
|
|
// const isDev = env === 'development';
|
|
|
|
|
|
|
|
// const logDir = config.logs_path;
|
|
const logDir = '/data/logs';
|
|
// const logDir = 'E://logs/taptap';
|
|
fs.existsSync(logDir) || fs.mkdirSync(logDir);
|
|
|
|
console.log('logDir:',logDir)
|
|
console.log('env', env)
|
|
|
|
|
|
let logger = null;
|
|
const createLogger = function(appName) {
|
|
const streams = [{
|
|
level: 'info',
|
|
stream: FileStreamRotator.getStream({
|
|
date_format: 'YYYYMMDD',
|
|
filename: `${logDir}/${'taptap'}-%DATE%.log`,
|
|
frequency: 'daily',
|
|
verbose: false,
|
|
}),
|
|
}];
|
|
if (isDev) {
|
|
streams.push({
|
|
level: 'debug',
|
|
stream: process.stdout,
|
|
});
|
|
}
|
|
return bunyan.createLogger({
|
|
name: 'taptap',
|
|
serializers: bunyan.stdSerializers,
|
|
streams: streams,
|
|
src: false,
|
|
});
|
|
};
|
|
export default {
|
|
info(obj, msg) {
|
|
if (!logger) {
|
|
logger = createLogger('taptap');
|
|
}
|
|
if (msg) {
|
|
logger.info(obj, msg);
|
|
} else {
|
|
logger.info(obj);
|
|
}
|
|
},
|
|
error(obj, msg) {
|
|
if (!logger) {
|
|
logger = createLogger('taptap');
|
|
}
|
|
if (msg) {
|
|
logger.error(obj, msg);
|
|
} else {
|
|
logger.error(obj);
|
|
}
|
|
},
|
|
warn(obj, msg) {
|
|
if (!logger) {
|
|
logger = createLogger('taptap');
|
|
}
|
|
if (msg) {
|
|
logger.warn(obj, msg);
|
|
} else {
|
|
logger.warn(obj);
|
|
}
|
|
},
|
|
debug(obj, msg) {
|
|
if (!logger) {
|
|
logger = createLogger('taptap');
|
|
}
|
|
if (msg) {
|
|
logger.debug(obj, msg);
|
|
} else {
|
|
logger.debug(obj);
|
|
}
|
|
},
|
|
trace(obj, msg) {
|
|
if (!logger) {
|
|
logger = createLogger('taptap');
|
|
}
|
|
if (msg) {
|
|
logger.trace(obj, msg);
|
|
} else {
|
|
logger.trace(obj);
|
|
}
|
|
},
|
|
fatal(obj, msg) {
|
|
if (!logger) {
|
|
logger = createLogger('taptap');
|
|
}
|
|
if (msg) {
|
|
logger.fatal(obj, msg);
|
|
} else {
|
|
logger.fatal(obj);
|
|
}
|
|
},
|
|
db(err) {
|
|
const obj = new Logs({
|
|
errmsg: err
|
|
});
|
|
obj.save().then(()=>{}).catch((err)=> {
|
|
logger.error(err);
|
|
});
|
|
},
|
|
};
|