NodeJS winston 日志文件不会因大小限制而改变
Posted
技术标签:
【中文标题】NodeJS winston 日志文件不会因大小限制而改变【英文标题】:NodeJS winston log file not change upon size limit 【发布时间】:2014-09-21 14:25:23 【问题描述】:我正在使用Winston 日志记录,并已将文件大小指定为最大 10MB。
filename: 'e:\app.log',
json:false,
maxsize:'10MB',
maxFiles:'10',
timestamp:true,
level:'silly'
我预计 app.log 文件会在大小达到 10MB 时进行轮换,但这从未发生过,我的日志文件甚至会增长到 GB。
我做错了什么吗?谢谢。
【问题讨论】:
看起来您可能需要传递filename
的绝对路径,或者根据这个有点旧的github issue 设置dirname
。
Go-oleg,谢谢。事实上,在我的代码中,它是绝对路径。重新更新了我的问题。
我认为maxsize
的值应该以字节为单位,因此您可以尝试使用10000000
而不是'10MB'
。
你说的太对了。非常感谢。现在可以了。
【参考方案1】:
如您所见,here maxsize
必须在 bytes
中,因此将其更改为 10000000
【讨论】:
文件在达到“最大尺寸”后没有旋转。我正在使用 "winston": "^2.3.1" 任何建议表示赞赏。 @KetavChotaliya 也许你可以打开另一个问题。【参考方案2】:使用 maxSize 而不是 maxsize 会起作用。
【讨论】:
谢谢,我试过了,但该属性仅适用于文件大小,条目(消息)大小可能大于它。 @Varun 即使我添加了 maxSize 日志文件也远远落后于大小。我给了 100MB,但文件超过了 200Mb。【参考方案3】:我认为 maxSize 仅适用于文件。
但在写入之前,日志条目大小可能大于限制。
我的问题是是否有类似 maxEntrySize 的东西可以直接限制日志条目的大小,而不仅仅是文件大小。
【讨论】:
以上是关于NodeJS winston 日志文件不会因大小限制而改变的主要内容,如果未能解决你的问题,请参考以下文章