语境:
\n\n我有一个 AWS EC2 实例
\n\n它运行Solr 5.1.0
\n\n-Xms2048m -Xmx2048m额外:(更新)
\n\nJdbcDataSource)情况:
\n\nSolr 上的索引有 200.000 个文档,每秒查询次数不超过一次。然而,大约10天后,服务器的内存和磁盘空间达到可用空间的90% - 95%。
\n\n在调查磁盘使用情况时,sudo du -sh /它仅返回总计2.3G. 几乎没有告诉我的那么多df -k(Use% -> 92%)。
我可以通过重新启动 Solr 服务来解决这种情况。
\n\n我缺少什么?Solr 为什么会消耗所有内存和磁盘空间以及如何防止它?
\n\n@TMBT 的额外信息
\n\n抱歉耽搁了,但我\xe2\x80\x99最近几天一直在监视 Solr 生产服务器。您可以在此处查看综述:\n https://www.dropbox.com/s/x5diyanwszrpbav/screencapture-app-datadoghq-com-dash-162482-1468997479755.jpg?dl=0 \nSolr 的当前状态:https ://www.dropbox.com/s/q16dc5t5ctl32od/Screenshot%202016-07-21%2010.29.13.png?dl=0 \n我在监控开始时重新启动了Solr,现在,2天后我看到了磁盘空间以每天 1.5Gb 的速度减少。\n如果您需要更多详细信息,请告诉我。
\n\nls -lh /var/solr/logs->total 72M监控到位后,我测试了最常见的查询。它确实包含分面(字段、查询)、排序、分组、\xe2\x80\xa6 但我并没有 \xe2\x80\x99t 真正影响堆和 gc 计数的各种指标。
\n我终于设法解决了这个问题。所以我正在回答我自己的问题。
log4j.properties我在位于/var/solr/(我的情况下为 Solr 根位置)的文件中更改/添加了以下行。
# log4j.rootLogger=INFO, file, CONSOLE
# adding:
log4j.rootLogger=WARN, file, CONSOLE
Run Code Online (Sandbox Code Playgroud)
降低日志记录级别。
# adding:
log4j.appender.file.Threshold=INFO
Run Code Online (Sandbox Code Playgroud)
设置日志记录阈值。
您可以从下图中看到,截至 9 月 2 日,磁盘使用情况保持稳定。服务器上的内存消耗也是如此。