簡體   English   中英

Spring日志和application.properties

[英]Spring logging and application.properties

以下問題對於許多人來說似乎很愚蠢,因為它應該有一個簡單的解決方案,但是我是Spring框架的初學者,並且我一直在搜索和測試許多方法,但均未成功。

因此,我需要為基於Spring的Web服務實現日志記錄。 Maven用於依賴關系,具有spring-boot-starter-ws依賴關系,而不是整個starter-web starter。

我通過添加依賴項和配置文件來嘗試使用log4j,它確實生成了一個日志文件,但僅用於記錄器本身的初始化,盡管log4j處於TRACE級別,但是沒有記錄何時使用該服務。 我還嘗試了logback,方法是添加logback.xml文件,並添加starter-logging依賴項,但這也會創建空的日志文件,並且上面沒有任何內容。

在Spring引導文檔中,提到了application.properties文件。 因此,我在WEB-INF中創建了此文件,然后將logging.level.org.springframeworklogging.path條目放入。 但是仍然根本沒有創建日志文件。

我不想記錄自己的消息,只想記錄Spring本身生成的事件。 而且我也沒有主要方法,只有Web服務的端點(如果其中任何一個可能相關)。 因此,我需要的是最簡單的日志記錄,可能無需添加太多依賴項,然后將Spring消息檢索到日志中。 有人可以告訴我我在做什么錯嗎?

logback是Spring Boot使用的默認日志記錄實現(我假設您正在使用Spring Boot創建一個jar並運行它!)。 基本上,您不需要執行任何操作,您已包含的啟動程序已經處理了日志記錄。

Spring附帶了一個默認的logback.xml ,它可以打開日志記錄,對於spring框架,它位於INFO上。

如果要覆蓋此內容,只需創建一個內容與默認內容相同的logback.xml文件,然后將spring的記錄器放在DEBUG或TRACE上。 除非您想要性能較低的應用程序,否則不確定是否真的要跟蹤一切。

至於您做錯了什么,就是您可能在做很多事情,並考慮到復雜問題。

我是在WEB-INF中創建的

那是您已經嘗試過的唯一問題。 它必須在類路徑上(如果具有正常的構建配置,請將其放在“ src / main / resources”中;如果出於某種原因手工構建WAR,則將其置於“ WEB-INF / classes”中)。

不知道logging.level.org.springframework and the logging.path可以在Spring Boot中使用。 您可以嘗試將logback.xml文件和application.properties直接移動到resources目錄dir並將其粘貼到logback.xml

<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="30 seconds">
<include resource="org/springframework/boot/logging/logback/base.xml"/>
<logger name="org.springframework" level="DEBUG" appender-ref="FILE"/>
</configuration>

這應該登錄控制台和您的/ tmp(如果是Linux)目錄。

//更新:

手動設置寫入日志的位置,您可以執行以下操作(我基本上減少了導入的base.xml內的內容):

<appender name="FILE_APPENDER"
    class="ch.qos.logback.core.rolling.RollingFileAppender">
    <encoder>
        <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} %5p ${PID:- } [%t] --- %-40.40logger{39} : %m%n%wex</pattern>
    </encoder>
    <file>C://yourDir</file>
</appender>

然后改變

<logger name="org.springframework" level="DEBUG" appender-ref="FILE"/>

至:

<logger name="org.springframework" level="DEBUG" appender-ref="FILE_APPENDER"/>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM