- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在尝试使用Winston和 winston-daily-rotate-file将我的所有控制台/日志输出从 Node.js 服务器记录到一个文件中,该文件(希望)每天午夜轮换。
我遇到的问题是未处理的异常似乎会生成一个新的日志文件,而不是写入现有的日志文件。有关复制行为,请参阅下面的示例代码。 如何将所有输出保存到单个日志文件以及输出到控制台? 目前,控制台方面似乎很好,但请随意指出我认为明显的任何内容失踪了。
const winston = require('winston');
const DailyRotateFile = require('winston-daily-rotate-file');
const path = require('path');
var logger = new (winston.createLogger)({
transports: [
new (winston.transports.Console)({
format: winston.format.combine(
winston.format.timestamp(),
winston.format.colorize({ all: true }),
winston.format.printf((info) => {
const {
timestamp, level, message
} = info;
return `${timestamp} - ${level}: ${message}`;
}),
),
handleExceptions: true
}),
new DailyRotateFile({
name: 'file',
datePattern: 'YYYY-MM-DDTHH-mm-ss',
handleExceptions: true,
format: winston.format.combine(
winston.format.timestamp(),
winston.format.printf((info) => {
const {
timestamp, level, message
} = info;
return `${timestamp} - ${level}: ${message}`;
}),
),
filename: path.join(__dirname, 'logs', '%DATE%.log')
}),
]
});
logger.info("This is an info message");
logger.error("This is an error message");
setTimeout(() => {throw new Error('oh dear!')}, 5000);
最佳答案
我的问题是由 datePattern 选项引起的。 winston-daily-rotate-file 使用此模式来确定文件轮换的频率。由于我在模式中包含了秒数,因此它正在查找具有当前时间戳(精确到秒)的文件并在写入文件之前创建它。
要获取我只需要更改的每日文件
datePattern: 'YYYY-MM-DDTHH-mm-ss'
至
datePattern: 'YYYY-MM-DD'
关于javascript - Winston javascript 记录器正在创建两个单独的日志文件。如何将所有条目记录到一个文件中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60194788/
我正在使用 winston、expressWinston、winston-mongoDB 来管理我的 NodeJs 应用程序中的日志。 同时使用 winston-mongodb transport 和
当我的应用程序启动时,winston 会记录各种信息,例如 winston:create-logger Define prototype method for "error" winston:crea
我正在使用 winston logger 和 wnat 进行流式输入。但我不知道我应该传递给什么。我的记录器: const logger = createLogger({ ... }); Missin
winston.createLogger();显然不是构造函数。为什么会这样? 我看到有些人尝试回滚到winston@3.0.0,但这对我不起作用。我使用的是最新版本的 winston 。以下是 lo
几年前我和 winston 一起工作。当我们在 localhost 上进行开发时,我们的 winston 被配置为输出格式良好、易于阅读的 JSON。 2.x winston npm install
我正在尝试使用 express-winston 和 winston-mongodb 将请求/响应记录到 NodeJS 项目中的 MongoDB。这是我到目前为止工作的示例代码; const expre
我正在尝试在 Node js 中实现一个记录器,它将每天以自定义格式的日志创建一个新的日志文件 为此我使用了三个包 winston morgan winston-daily-rotate-file 所
将 winston 更新至 3.0.0运行我的nodejs应用程序时出现此错误出现以下错误 TypeError: colors[Colorizer.allColors[lookup]] is no
编辑:找到答案,并为 future 的读者发布完整的答案。 我已经掌握了winston logging的基础知识在 Node.js 中,并希望更多地自定义我的日志记录。这是我到目前为止所拥有的: va
我正在使用 winston 登录 Sails 应用程序。这是我的配置: var customLogger = new winston.Logger({ transports: [
所以我使用winston-daily-rotate-file。在 app.js 中我有: var logger = require('./logger'); 然后: logger.info("logg
现在我使用 Winston 来记录最大大小和每日轮换 我希望每个 API 端点都有一个文件,从而定义多个日志文件 我怎样才能实现这一目标? 这是我的 winston 助手类 import * as w
我想在 node 应用程序中使用 winston 记录器将错误记录到文件中。但是 winston 没有写入文件。 var logger = new (winston.Logger)({
我正在使用 创建完整的平均堆栈应用程序 NodeJs , Angular 6 , ExpressJs and MongoDB 我已经成功创建了一个服务器,并且它工作得很好,在我的应用程序中记录错误时,
我正在使用 Winston ^3.0.0-rc6,如下所示: var options = { file: { level: 'info', filename:
我尝试向 winston 添加自定义日志级别。这是记录器的代码: const write = new (winston.Logger)({ transports: [
这是我的 winston 记录器 - var winston = require('winston') var logger = new (winston.Logger)({ transports
我正在使用这样的东西: var winston = require('winston'), logger = new (winston.Logger)({ transports: [ ne
Flatiron 的日志记录库 Winston 非常有用,但我不知道如何为记录器分配名称。我期待与其他日志库类似的输出,例如: [] [] - 是否可以这样配置Winston? 谢谢。 最佳答案
我写了一个小模块,使用 winston 来记录东西。 我使用了 sudo npm install -g winston(它在 vm 上...所以我不太关心 sudo 等。 来自 npm 的日志: wi
我是一名优秀的程序员,十分优秀!