@blued-core-oversea/rdkafka-logger
v2.2.0
Published
```bash npm install @blued-core-oversea/rdkafka-logger --save ```
Readme
下载
npm install @blued-core-oversea/rdkafka-logger --saveAPI 列表
- info(message: string, meta: LogsMesssage): void // 信息日志
- error(message: string, err: Error, meta: LogsMesssage): void // 错误日志
- warn(message: string, meta: LogsMesssage): void // 告警日志
- close(): void // 关闭日志(服务进程退出调用一次即可)(日志不是实时写入的,最好保证服务结束调用一次,该方法会把日志强制刷到日志平台)
使用
import { BasicLogger, LoggerType, WinstonDatePattern } from './index'
const logger = new BasicLogger({
service: 'test_service',
loggerType: LoggerType.MachineAndElk,
loggerPath: '/xxx/xxx/log',
datePattern: WinstonDatePattern.Minute,
kafkaConf: {
isQconf: true,
path: "/xxx/bigdata/das/backendlog/overseas/bootstraps",
topic: "/xxx/bigdata/das/backendlog/overseas/topic",
}
})
async function testLogger() {
logger.info("test message", {
logName: 'test_logger',
uid: 1234,
extraInfo: {
q: 1,
d: '10'
}
})
logger.error('test error', new Error('this is a error'), {
logName: 'error_logger'
})
logger.warn('test warn', {
logName: 'warn_logger',
uid: 123,
clientIP: '127.0.0.1',
requestID: '2321423432',
requestURL: 'http//127.0.0.1:9090/metrics'
})
}
testLogger().then(() => {
console.log('success')
}).catch(err => {
console.log(err)
})
// 服务入口文件逻辑
// 监听退出逻辑
// 关闭一些句柄
function closeHandle() {
try {
// 关闭逻辑
logger.close()
} catch (error) {
console.log('close handle', error)
}
}
process.on('exit', () => {
closeHandle()
})
process.on('SIGTERM', () => {
process.exit()
})
process.on('SIGINT', () => {
process.exit()
})