solr 日志配置

配置Solr日志记录

临时记录设置

您可以使用Admin Web界面来控制Solr中的日志输出量。选择LOGGING链接。请注意,此页面只允许您更改正在运行的系统中的设置,并不会保存在下一次​​运行中。 ![](https://images2018.cnblogs.com/blog/1177207/201808/1177207-20180828140126457-378371453.png)

永久记录设置

Solr 使用 Log4J 版本1.2 进行日志记录,它是使用server/resources/log4j.properties进行配置。默认情况下,Solr日志消息将被写入SOLR_LOGS_DIR/solr.log。 ``` /opt/solr-7.2.1/server/resources ``` ``` /opt/solr-7.2.1/server/logs ```

solr日志配置示例

每天生成一个日志文件 ERROR单独生成一个日志文件 ``` # Default Solr log4j config # rootLogger log level may be programmatically overridden by -Dsolr.log.level solr.log=${solr.log.dir} log4j.rootLogger=INFO, fileError, fileInfo, CONSOLE

Console appender will be programmatically disabled when Solr is started with option -Dsolr.log.muteconsole

log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.layout=org.apache.log4j.EnhancedPatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS} %-5p (%t) [%X{collection} %X{shard} %X{replica} %X{core}] %c{1.} %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.fileError=org.apache.log4j.DailyRollingFileAppender
log4j.appender.fileError.DatePattern='_'yyyy-MM-dd
log4j.appender.fileError.File=${solr.log}/solrError.log
log4j.appender.fileError.Append=true
log4j.appender.fileError.Threshold=ERROR
log4j.appender.fileError.MaxBackupIndex=10
log4j.appender.fileError.layout=org.apache.log4j.EnhancedPatternLayout
log4j.appender.fileError.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS} %-5p (%t) [%X{collection} %X{shard} %X{replica} %X{core}] %c{1.} %m%n

使用日志输出过滤

log4j.appender.fileError.filter.F1=org.apache.log4j.varia.LevelRangeFilter

log4j.appender.fileError.filter.F1.LevelMin=ERROR

log4j.appender.fileError.filter.F1.LevelMax=ERROR

log4j.appender.fileInfo=org.apache.log4j.DailyRollingFileAppender
log4j.appender.fileInfo.DatePattern='_'yyyy-MM-dd
log4j.appender.fileInfo.File=${solr.log}/solrInfo.log
log4j.appender.fileError.Append=true
log4j.appender.fileInfo.Threshold=INFO
log4j.appender.fileError.MaxBackupIndex=10
log4j.appender.fileInfo.layout=org.apache.log4j.EnhancedPatternLayout
log4j.appender.fileInfo.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS} %-5p (%t) [%X{collection} %X{shard} %X{replica} %X{core}] %c{1.} %m%n

使用日志输出过滤

log4j.appender.fileInfo.F1=org.apache.log4j.varia.LevelRangeFilter
log4j.appender.fileInfo.F1.LevelMin=INFO
log4j.appender.fileInfo.F1.LevelMax=INFO

Adjust logging levels that should differ from root logger

log4j.logger.org.apache.zookeeper=WARN
log4j.logger.org.apache.hadoop=WARN
log4j.logger.org.eclipse.jetty=WARN
log4j.logger.org.eclipse.jetty.server.Server=INFO
log4j.logger.org.eclipse.jetty.server.ServerConnector=INFO

set to INFO to enable infostream log messages

log4j.logger.org.apache.solr.update.LoggingInfoStream=OFF



</br>
<h3>记录慢速查询</h3>
对于大容量的搜索应用程序,记录每个查询可能会生成大量日志,并且根据卷的大小,可能会影响性能。如果您挖掘这些日志以获取对应用程序的更多见解,那么记录每个查询请求可能会有用。

另一方面,如果您只关心与请求相关的警告和错误消息,则可以将日志详细程度设置为WARN。但是,这会造成潜在的问题,因为您不知道是否有任何查询缓慢,因为缓慢的查询仍然记录在INFO级别。

Solr提供了一种将日志详细度阈值设置为WARN的方法,并且可以设置一个延迟阈值,在该阈值之上,请求被视为“slow”,并在WARN级别记录该请求,以帮助您识别应用程序中的缓慢查询。要启用此行为,请在solrconfig.xml 的查询部分配置该<slowQueryThresholdMillis>元素:

1000

超过指定阈值的任何查询将在WARN级别被记录为“slow”查询。
posted @ 2018-08-28 14:00  wdmiye  阅读(3328)  评论(0编辑  收藏  举报