我的配置日志文件有问题。我正在尝试记录所有操作,但唯一保存的是 SERVER RESTARTED 。 我的配置文件:
##store data here
dbpath=C:\data\db
profile=2
##all output go here
logpath=C:\mongodb\log\mongo.log
logappend=true
##log read and write operations
diaglog=3
我错过了什么? 有没有办法用java spring配置mongo日志文件(可能是xml)?
最佳答案
一般来说,您确实不想使用 diaglog
configuration option因为 diaglog 二进制文件既非常冗长,也难以使用。启用此设置后,您将在 dbpath
中获得一系列文件。名为 diaglog.<time in hex>
的目录.您可以使用 mongosniff
重播这些文件。工具,但这种方法主要用于驱动程序/服务器开发,而不是最终用户故障排除。
仅供引用,diaglog
该选项实际上已在 MongoDB 2.6 中被弃用(引用:SERVER-12149)。
要记录查询,您应该查看 Database profiler可以全局启用(正如您在配置中使用 profile=2
所做的那样)或每个数据库。
分析数据将保存在一个上限 system.profile
集合,每个数据库的默认大小为 1Mb。如果你想收集更多的历史,你可以创建一个更大的system.profile
收藏。
请注意,不建议在生产环境中使用 2 级分析,因为这会为您的数据库的每个查询生成写入。
is there a way to configure mongo log file with java spring somehow (maybe xml)?
我不希望驱动程序具有配置 MongoDB 服务器的选项。
但是,您可以调用 profile
通过 Java 驱动程序命令在运行时调整分析选项。
例如,您可以通过以下方式启用分析级别 2:
db.command(BasicDBObjectBuilder.start().add("profile", 2).get());
关于MongoDB 日志文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21598594/