[英]Solr 5.1: Solr is creating way too many log files
我正在處理Solr 5.1創建太多日志文件的問題。 每次重新啟動Solr,並在整個星期內定期,Solr會創建以下文件,我需要它停止:
WARNING: System properties and/or JVM args set. Consider using --dry-run or --exec
WARNING: System properties and/or JVM args set. Consider using --dry-run or --exec
在一周內,我收集了近三十個1和2類文件!
更糟糕的是,文件類型1和2似乎不尊重我的log4j.rootlogger
設置,而是填充了INFO級別的材料。
以下是我的log4j.properties
文件的相關部分:
# Logging level
solr.log=logs
log4j.rootLogger=WARN, file
#- size rotation with log cleanup.
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.MaxFileSize=100MB
log4j.appender.file.File=${solr.log}/solr.log
log4j.appender.file.MaxBackupIndex=0
我想做的是以下內容:
我該怎么做才能做到這一點?
所以過了一段時間,我想出了如何解決這個問題。
回顧一下,Solr在啟動時會持續創建一大堆帶有solr_log *和gc_log *模式的文件,並且會在一天內定期創建。 最終我遇到了一些相當嚴重的空間問題,因為Solr喜歡創造無數的日志。
導航到/path/to/solr/bin
並找到在啟動時運行的solr
腳本。 打開文件,查找以下內容,並注釋掉mv "$SOLR_LOGS_DIR/solr.log" "$SOLR_LOGS_DIR/solr_log_$(date +"%Y%m%d_%H%M")"
:
# backup the log files before starting
if [ -f "$SOLR_LOGS_DIR/solr.log" ]; then
if $verbose ; then
echo "Backing up $SOLR_LOGS_DIR/solr.log"
fi
mv "$SOLR_LOGS_DIR/solr.log" "$SOLR_LOGS_DIR/solr_log_$(date +"%Y%m%d_%H%M")"
fi
如果你願意,可以刪除它。 您也可以嘗試不使用-f
標志,但在我的商店,我們喜歡它。
這將保留solr.log
,但Solr將不再進行任何備份。 如果您想要每日備份,我建議您在log4j.properties
文件中配置TimeBasedRollingPolicy
或更好的DailyRollingFileAppender
,該文件位於/path/to/solr/server/resources
。
如果需要,您還可以注釋掉Solr垃圾收集日志的mv
行,這將只留下solr_gc.log
。
如果像我一樣,您有其他方法可以監視Solc的gc,那么您需要完全關閉gc日志記錄。
在與solr
腳本相同的目錄中,打開solr.in.sh
(僅限Mac / Linux,我認為solr.cmd
適用於Windows用戶)並對此行進行注釋: # Enable verbose GC logging GC_LOG_OPTS="-verbose:gc -XX:+PrintHeapAtGC -XX:+PrintGCDetails \\ -XX:+PrintGCDateStamps -XX:+PrintGCTimeStamps -XX:+PrintTenuringDistribution -XX:+PrintGCApplicationStoppedTime"
。
您需要重新啟動Solr。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.