Solr сохраняет дисковое пространство

В настоящее время у меня возникает следующая проблема на моих подчиненных серверах production solr: Solr продолжает сохранять дисковое пространство, даже если мы фактически не можем видеть, какой файл хранится в этом пространстве, и что мне нужно сделать для решения проблемы, это перезапустить solr каждый день, что, честно говоря, не совсем идеально.

Мы думаем, что это как-то связано с тем, как log4j выполняет ротацию журнала, похоже, что когда фактический файл журнала вращается, solr оставляет какой-то поток открытым, и этот поток постоянно записывает в файл журнала.

на данный момент это log4j.properties:

solr.log=logs/
log4j.rootLogger=INFO, file, CONSOLE

log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender

log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=%-4r [%t] %-5p %c %x \u2013 %m%n

#- size rotation with log cleanup.
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.MaxFileSize=4MB
log4j.appender.file.MaxBackupIndex=9

#- File to log to and log format
log4j.appender.file.File=${solr.log}/solr.log
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%-5p - %d{yyyy-MM-dd HH:mm:ss.SSS}; %C; %m\n

log4j.logger.org.apache.zookeeper=WARN
log4j.logger.org.apache.hadoop=WARN

# set to INFO to enable infostream log messages
log4j.logger.org.apache.solr.update.LoggingInfoStream=OFF

Глядя на файлы в файловой системе, все они имеют размер 4 МБ, поэтому я не уверен, где мне не хватает места.

кто-нибудь сталкивался с подобной проблемой? или есть идеи, где я мог бы начать смотреть?

Solr работает автономно на пристани.

Спасибо


person Paolo P.    schedule 01.04.2015    source источник


Ответы (1)


Я подозреваю, что журнал консоли занимает ваше дисковое пространство. Проверьте размер файла (предположительно $SOLR_INSTALL_DIR/logs/solr-*-console.log).

Настройки

log4j.rootLogger=INFO, file, CONSOLE

в log4j.properties указывает, что сообщения уровня INFO регистрируются как в файловом приложении, так и в консольном приложении, но, в отличие от файлового приложения, журнал консоли никогда не вращается.

Измените уровень журнала по умолчанию на WARN:

log4j.rootLogger=WARN, file, CONSOLE

и увеличивайте уровень журнала только для приложений, для которых требуется более высокая детализация:

log4j.appender.file.Threshold=INFO
person Ansgar Wiechers    schedule 22.03.2016