2013-01-17 4 views
3

logback file inclusion 순서대로 구성을 기대하는 내용의 순서에 따라 달라집니다. 나는 그것이 펜더를 찾을 수 없습니다 불평 주/자원logback 파일 포함은

<?xml version="1.0"?> 
<configuration> 
    <include file="${catalina.base}/conf/includedConfig.xml"/> 

<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> 
    <file>${catalina.base}/logs/logFile.log</file> 
    <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> 
     <fileNamePattern>logFile.%d{yyyy-MM-dd}.log</fileNamePattern> 
     <maxHistory>7</maxHistory> 
    </rollingPolicy> 
    <encoder> 
     <pattern>%date [%thread] %-5level %logger{35} - %msg%n</pattern> 
    </encoder> 
</appender> 

을 루트를 제외하고 SRC/아래 ${catalina.base}/conf/includedConfig.xml

<?xml version="1.0"?> 
<included> 
    <root level="INFO"> 
    <appender-ref ref="FILE"/> 
    </root> 
</included> 

그리고 logback.xml 아래를 유지했다. 나는 태그의 위치를 ​​변경하고 appender 이후에 kep했지만, 같은 오류를 발생시킵니다.

17:05:12,566 |-ERROR in ch.qos.logback.core.joran.action.AppenderRefAction - Cou 
ld not find an appender named [FILE]. Did you define it below instead of above in 
the configuration file? 

역순으로 동일한 작업을 수행하는 경우 (예 : appender를 logback.xml의 외부 파일 및 루트에 넣으면 정상적으로 작동 함)

내가 이렇게 할 이유는, 내가 빌드가 (같은 유물) 로그 수준은 응용 프로그램 전쟁에있는 경우 할 수 없습니다 다른 환경으로 승격됩니다 때 로그 레벨을 변경하고 싶습니다.

답변

0

는 다음과 같이 후 추가하려고 :`

<appender name="all_info" class="ch.qos.logback.core.rolling.RollingFileAppender"> 
    <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> 
     <level>INFO</level> 
    </filter> 
    <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> 
     <FileNamePattern>./log/mylog_all_info.%d{yyyy-MM-dd}.log</FileNamePattern> 
     <MaxHistory>30</MaxHistory> 
    </rollingPolicy> 
    <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> 
     <MaxFileSize>5MB</MaxFileSize> 
    </triggeringPolicy> 
    <layout class="ch.qos.logback.classic.PatternLayout"> 
     <Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{80} - %msg%n</Pattern> 
    </layout> 
</appender> 

<root> 
    <appender-ref ref="all_info" level="INFO" /> 
</root> 

`