gpt4 book ai didi

javascript - cappedMax 在 Ubuntu 上的 Node.js 中的 Winston-mongodb 记录器中不起作用

转载 作者:行者123 更新时间:2023-12-03 08:03:10 25 4
gpt4 key购买 nike

我使用 Winston 模块在 Node.js 中创建了一个记录器,并通过要求具有以下选项的 Winston-mongodb 模块添加了 MongoDB 传输:

{
db: config.db[k.DB_ENV.AUTHOR],
username: config.dbUser,
password: config.dbPassword,
collection: 'log-aggregation',
storeHost: true,
capped: true,
cappedMax: 10 // documents
}

我希望记录器为每 10 个文档创建一个新集合。但记录器继续记录同一集合。我对 collection: 'log-aggregation' 行进行了注释,以检查选项是否确实有效,然后它开始记录到默认的 'log' 集合。

那么我的错误在哪里呢? cappedMax 选项是否有最小文档大小?我尝试使用 cappedSize 选项以及 10 到 1000 个值,但仍然没有创建新集合。

我想知道 cappedSize 和 cappedMax 选项的最小和最大允许值?

我还想知道创建的新集合的名称是什么?

最佳答案

这是我用来获取多个日志的方法:

var winston = require('winston');
require('winston-mongodb').MongoDB;


winston.loggers.add('userLog',{
transports : [
new(winston.transports.MongoDB)({
db : 'mongodb://username:password.mongolab.com:5555/log_db',
collection : 'userLog',
capped : true
}),
]
});
winston.loggers.add('profileLog',{
transports : [
new(winston.transports.MongoDB)({
db : 'mongodb://username:password.mongolab.com:5555/log_db', collection : 'profileLog',
capped : true
}),
]
});

它工作正常,没有明显的延迟。

附注您可以在 capped:true

之后或之前添加所需的所有选项

玩得开心!

关于javascript - cappedMax 在 Ubuntu 上的 Node.js 中的 Winston-mongodb 记录器中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34511857/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com