您现在的位置是:首页 > 电脑 > 

将Winston Logger从2.4.4迁移到.x ...新的传输方式让我迷失了

2025-07-21 06:28:32
将Winston Logger从2.4.4迁移到.x ...新的传输方式让我迷失了 所以我试图从Winston 2.x迁移到.x,但是它在设置传输方式方面发生了相当大的变化,我似乎无法像以前那样对其进行设置,所以仅此而已。我想要的控制台中的内容[human-readable-date] [level(colourised)] : [text string], [formatted JSO]

将Winston Logger从2.4.4迁移到.x ...新的传输方式让我迷失了

所以我试图从Winston 2.x迁移到.x,但是它在设置传输方式方面发生了相当大的变化,我似乎无法像以前那样对其进行设置,所以仅此而已。我想要的控制台中的内容

[human-readable-date] [level(colourised)] : [text string], [formatted JSO]

在2.4中,我让它以未格式化的格式打印出JSO,这足够了,但是改进总是不错。

这是我的旧配置文件

ct winston = require("winston");
require("winston-mongodb");
ct config = require("./mongoDb").config;
ct url = config.URL;

ct tsFormat = () =>
  `${new Date().toLocaleDateString()} ${new Date().toLocaleTimeString()}`;

ct logger = new winston.Logger({
  transports: [
    new Cole({
      timestamp: tsFormat,
      colorize: true
    }),
    new MongoDB({
      timestamp: tsFormat,
      db: url,
      level: "debug",
      autoReconnect: true
    })
  ]
});
 = logger;

-编辑-

我现在在这里

ct winston = require("winston");
require("winston-mongodb");
ct config = require("./");
ct mongo = require("./mongo");

ct logger = ({
  transports: [
    new Cole({
      format: winston.formatbine(
        winston.(),
        winston.({
          format: "YYYY-MM-DD HH:mm:ss"
        }),
        winston.format.align(),
        winston.format.printf(
          info => `${} ${info.level}: ${}`
        )
      )
    }),

    new MongoDB({
      db: `${}/${}`,
      level: "debug",
      tryReconnect: true,
      storeHost: true
    })
  ]
});
 = logger;

但是我根本无法获得所需的JSO部分,也无法将其发送到mongodb

回答如下:

与我喜欢的本地样式pino-pretty获得了相似的结果。

能够打印错误堆栈和其他元数据对象。

代码:

我为命名空间添加了其他打印“字段”,因为应用使用pino-pretty为每个文件创建了一个子记录器>

({ label: namespace })

结果:

winston.formatbine( winston.({ format: 'YYYY-MM-DD HH:mm:ss' }), winston.({ stack: true }), winston.(), winston.format.printf( ({ timestamp, level, label, message, stack, ...rest }) => { ct namespace = label ? `(${label})` : '' ct errStack = stack ? `\n${stack}` : '' ct meta = rest && Object.keys(rest).length ? `\n${JSO.stringify(rest, undefined, 2)}` : '' return `[${timestamp}] ${level}: ${namespace} ${message} ${meta} ${errStack}` } ) )

#感谢您对电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格的认可,转载请说明来源于"电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格

本文地址:http://www.dnpztj.cn/diannao/880942.html

相关标签:无
上传时间: 2024-04-17 07:00:49
留言与评论(共有 10 条评论)
本站网友 去角质方法
7分钟前 发表
tsFormat
本站网友 巫家坝
26分钟前 发表
[text string]
本站网友 血异形
21分钟前 发表
[formatted JSO] 在2.4中
本站网友 申通快递员工资
13分钟前 发表
winston.({ stack
本站网友 头发毛躁怎么办
4分钟前 发表
colorize
本站网友 网页游戏加速浏览器
28分钟前 发表
true })
本站网友 前列腺肥大
28分钟前 发表
能够打印错误堆栈和其他元数据对象
本站网友 桦树茸的功效与作用
27分钟前 发表
winston.formatbine( winston.()
本站网友 长沙男科
10分钟前 发表
我让它以未格式化的格式打印出JSO