2017-03-01 68 views
2

有沒有什麼辦法可以配置基於配置的春天啓動日誌記錄到多個文件/控制檯?即一些日誌語句應寫入審計文件,並且正常的日誌語句應該轉到控制檯/正常日誌文件。春季啓動日誌記錄到多個文件

以下是我在春季啓動示例應用程序中嘗試的代碼。

的logback-spring.xml

<?xml version="1.0" encoding="UTF-8"?> 
<configuration> 
    <include resource="org/springframework/boot/logging/logback/base.xml"/> 
    <logger name="file" level="DEBUG" additivity="false"> 
     <appender-ref ref="FILE" /> 
    </logger> 
    <logger name="org.hello" level="ERROR" additivity="false"> 
     <appender-ref ref="CONSOLE" /> 
    </logger> 
</configuration> 

下面是application.properties項

logging.level.org.springframework.web=INFO 
logging.file=logs/spring-boot-logging.log 

下方的HelloController

@RestController 
public class HelloController { 

Logger logger = LoggerFactory.getLogger(HelloController.class); 

    Logger logger1 = LoggerFactory.getLogger("file"); 

    @RequestMapping("/") 
    public String index() { 

     logger.info("My Log test"); 
     logger1.info("My Audit test"); 


     return "Greetings from Spring Boot!"; 
    } 

} 

是否有人可以幫助?有沒有人遇到類似的情況?

非常感謝

回答

1

標準的logback例如,2個文件不同的包去到不同的文件:

<configuration> 

    <appender name="FILE1" class="ch.qos.logback.core.FileAppender"> 
    <file>myApp1.log</file> 
    <encoder> 
     <pattern>%date %level [%thread] %logger{10} [%file:%line] %msg%n</pattern> 
    </encoder> 
    </appender> 

    <appender name="FILE2" class="ch.qos.logback.core.FileAppender"> 
    <file>myApp1.log</file> 
    <encoder> 
     <pattern>%date %level [%thread] %logger{10} [%file:%line] %msg%n</pattern> 
    </encoder> 
    </appender> 

    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> 
    <encoder> 
     <pattern>%msg%n</pattern> 
    </encoder> 
    </appender> 

    <logger name="com.package1.foo" level="DEBUG"> 
    <appender-ref ref="FILE1" /> 
    </logger> 

    <logger name="com.package2.bar" level="DEBUG"> 
    <appender-ref ref="FILE2" /> 
    </logger> 

    <root level="debug"> 
    <appender-ref ref="STDOUT" /> 
    </root> 
</configuration> 
0

只需添加另一個記錄器和附加器在您的配置文件並使用的名稱創建記錄器對象記錄器在配置中定義。詳細解釋 檢查 Spring boot multiple log files

相關問題