cube.js 自定义日志处理
cube.js 的日志处理部分是可以扩展的,
参考机制
const winston = require('winston');
const { loggly } = require('winston-loggly-bulk');
winston.add(
new loggly({
token: 'LOGGLY-TOKEN',
subdomain: 'your-subdomain',
tags: ['winston-nodejs'],
json: true,
})
);
module.exports = {
logger: (msg, params) => {
console.log(`${msg}: ${json.stringify(params)}`);
winston.log("info",`${msg}----${JSON.stringify(params)}`)
},
};
集成graylog
// Cube.js configuration options: https://cube.dev/docs/config
const WinstonGraylog2 = require('winston-graylog2');
const { createLogger, format, transports } = require('winston');
const { combine, timestamp, label, printf } = format;
const myFormat = printf(({ level, message, label, timestamp }) => {
return `${timestamp} [${label}] ${level}: ${message}`;
});
const options = {
name: 'Graylog',
level: 'debug',
silent: false,
handleExceptions: false,
graylog: {
servers: [{host: '<host>', port:<port>}],
hostname: '<servicehostname>',
facility: 'oneservice',
bufferSize: 140000
},
staticMeta: {env: 'staging'}
}
var logger = createLogger({
format: combine(
label({ label: 'right meow!' }),
timestamp(),
myFormat
),
transports: [
new WinstonGraylog2(options) ],
});
module.exports = {
logger:(msg, params)=>{
console.log(`${JSON.stringify({msg,
logger.log({
level: 'info',
message: `${JSON.stringify({msg,
});
}
};
参考资料
https://cube.dev/docs/configuration/extending-cubejs
https://github.com/winstonjs/winston#formats
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
2020-04-26 fusionauth 通用sso 解决方案学习二 基本试用
2020-04-26 zeeqs 一个通用的zeebe 数据查询服务
2020-04-26 zeebe 0.23.1 变动说明
2020-04-26 fusionauth 通用sso 解决方案学习一 环境运行
2020-04-26 zeebe 0.23.1 发布
2019-04-26 Flagr 配置说明
2019-04-26 Flagr 架构