我试图为我的项目做高级日志记录。
var winston = require('winston');
var MongoDB = require('winston-mongodb').MongoDB;
var logger = new(winston.Logger)({
transports : [
new(winston.transports.MongoDB)({
db : 'logs'
})
]
});
module.exports = logger;我得到了一个错误:
/opt/City13/node_modules/winston-mongodb/node_modules/mongodb/lib/url_parser.js:16
throw Error("URL must be in the format mongodb://user:pass@host:port/dbnam
^
Error: URL must be in the format mongodb://user:pass@host:port/dbname
at Error (<anonymous>)
at module.exports (/opt/City13/node_modules/winston-mongodb/node_modules/mongodb/lib/url_parser.js:16:11)
at Function.MongoClient.connect (/opt/City13/node_modules/winston-mongodb/node_modules/mongodb/lib/mongo_client.js:95:16)
at new exports.MongoDB (/opt/City13/node_modules/winston-mongodb/lib/winston-mongodb.js:124:25)
at Object.<anonymous> (/opt/City13/logger/index.js:5:7)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.require (module.js:364:17)我尝试将主机ip地址添加到设置,但它不起作用。
发布于 2015-04-15 21:47:27
此配置适用于我:
var logger = new (winston.Logger)({
transports: [
new(winston.transports.MongoDB)({
db : 'mongodb://localhost:27017/Book-catalog',
collection: 'logs'
})
]
});('Book-catalog‘是我的数据库名称)
发布于 2015-03-21 01:43:07
来自他们的文档:db: MongoDB connection uri or preconnected db object.
你给了它一个字符串'logs‘。它想要的是连接所需的整个mongodb url。
他们在错误消息中给出了一个示例:mongodb://user:pass@host:port/dbname
如果你想指定集合(大概就是你想用‘logs’做的事情),还有一个叫做' collection‘的选项
https://stackoverflow.com/questions/29171495
复制相似问题