Cassandra未拾取log4j-server.properties文件
我使用自己的启动脚本启动Cassandra实例,该脚本设置Cassandra_CONF目录(位于Cassandra_主目录之外) 当这个过程开始时,我注意到日志不符合我的log4j-server.properties文件。经过进一步调查,似乎没有拾取log4j-server.properties文件,即使在Cassandra生成的命令行参数中出现了对该文件的引用:Cassandra未拾取log4j-server.properties文件,log4j,cassandra,cassandra-2.0,Log4j,Cassandra,Cassandra 2.0,我使用自己的启动脚本启动Cassandra实例,该脚本设置Cassandra_CONF目录(位于Cassandra_主目录之外) 当这个过程开始时,我注意到日志不符合我的log4j-server.properties文件。经过进一步调查,似乎没有拾取log4j-server.properties文件,即使在Cassandra生成的命令行参数中出现了对该文件的引用: -Dlog4j.configuration=log4j-server.properties 在脚本中,我输出了log4j-serv
-Dlog4j.configuration=log4j-server.properties
在脚本中,我输出了log4j-server.properties文件的内容,以确保它至少是从正确的位置读取的,并且是正确的。是否有我缺少的一些配置选项使Cassandra从log4j-server.properties文件中读取?您正在运行哪个版本?如果您运行的是2.1+(目前不是一个稳定的版本),那么已经从log4j切换到logback,您的旧配置文件将不再影响任何内容 Logback是通过xml文件配置的,您必须使用的参数是
-Dlogback.configurationFile=Logback.xml
有关交换机的更多详细信息
下面是一个当前正在使用的配置示例
/var/log/cassandra/system.log
/var/log/cassandra/system.log.%i.zip
1.
20
20MB
%-5级别[%thread]%日期{ISO8601}%F:%L-%msg%n
%-5级别%date{HH:mm:ss,SSS}%msg%n
在system.log中,您是否看到一行写着“Logging initialized”(日志已初始化)?
-Dlog4j.configuration=log4j-server.properties
<configuration scan="true">
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>/var/log/cassandra/system.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
<fileNamePattern>/var/log/cassandra/system.log.%i.zip</fileNamePattern>
<minIndex>1</minIndex>
<maxIndex>20</maxIndex>
</rollingPolicy>
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
<maxFileSize>20MB</maxFileSize>
</triggeringPolicy>
<encoder>
<pattern>%-5level [%thread] %date{ISO8601} %F:%L - %msg%n</pattern>
<!-- old-style log format
<pattern>%5level [%thread] %date{ISO8601} %F (line %L) %msg%n</pattern>
-->
</encoder>
</appender>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%-5level %date{HH:mm:ss,SSS} %msg%n</pattern>
</encoder>
</appender>
<root level="INFO">
<appender-ref ref="FILE" />
<appender-ref ref="STDOUT" />
</root>
<logger name="com.thinkaurelius.thrift" level="ERROR"/>
</configuration>