我正在尝试在不重新启动的情况下设置新的日志目标。
我不清楚要设置什么/如何设置。
我在跑步
localhost > db.version()
2.6.3
我想将系统日志更改为
/var/log/mongod/mongod_NA.log
我努力了
localhost > db.adminCommand( { setParameter: 1, "systemLog": "/var/log/mongod/mongodb/mongod_NA.log" } )
{
"ok" : 0,
"errmsg" : "no option found to set, use help:true to see options "
}
localhost > db.adminCommand( { setParameter: 1, "Log": "/var/log/mongod/mongodb/mongod_NA.log" } )
{
"ok" : 0,
"errmsg" : "no option found to set, use help:true to see options "
}
localhost > db.adminCommand( { setParameter: 1, "logPath": "/var/log/mongod/mongodb/mongod_NA.log" } )
{
"ok" : 0,
"errmsg" : "no option found to set, use help:true to see options "
}
localhost > db.adminCommand( { setParameter: 1, help: true , systemLog: { 'path': '/var/log/mongod_NA.log' } } )
{
"help" : "help for: setParameter set administrative option(s)\n{ setParameter:1, <param>:<value> }\nsupported:\n [ ... ]",
"lockType" : 0,
"ok" : 1
}
答案1
没有 MongoDB 管理命令可以更改路径systemLog
。这是一个启动选项,必须在进程级别(mongod
或mongos
)配置,通常设置为 MongoDB 配置文件中的选项之一。您需要重新启动 MongoDB 服务或进程才能更改任何启动选项。
但是,如果您的目标是使用新的日志文件,因为当前日志文件太大,那么您应该查看logRotate
命令并在您的环境中设置定期日志轮换(例如,logrotate
在 Linux 上使用)。
我假设你也知道 MongoDB 2.6 现在已经非常过时了(该版本系列于 2016 年 10 月停止更新)。有一些重要的稳定性和安全性修复在后续版本中,因此您至少应该尝试升级到最终版本 2.6.12,该版本比 2.6.3 新近 2 年。2.6.x 等次要版本不会引入任何与早期 2.6 版本不同的后向更改。