2017-10-20 260 views
0

我不得不把所有的日誌數據(即調試,信息,錯誤)到mysql數據庫,而不是對文件/控制檯。 我讀了春天啓動文檔,但我沒有看到相關的數據庫記錄的任何配置。春季啓動日誌到mysql數據庫

https://docs.spring.io/spring-boot/docs/current/reference/html/howto-logging.html

也試過下面的鏈接,但它也不能正常工作。 https://www.tutorialspoint.com/log4j/log4j_logging_database.htm

誰能幫我做這件事。 謝謝。

回答

0

我讀春天啓動文檔,但我沒有看到相關的數據庫記錄任何 配置。

因爲spring引導程序將日誌框架(logback/log4j等)的功能關閉了。所以,你需要配置你的日誌框架因此使用它的配置文件(如:logback.xml,的logback-spring.xml,logback.groovy等)。在春季啓動默認的日誌框架是SLF4J +的logback。所以結賬你可以如何使用DBAppender。

對於的logback

https://logback.qos.ch/manual/appenders.html#DBAppender http://learningviacode.blogspot.com/2014/01/writing-logs-to-database.html Log to database with LogBack https://medium.com/@chakrar27/storing-log-data-in-postgresql-using-logback-db-appender-292891a9918

1.創建logback.xml文件:

<?xml version="1.0" encoding="UTF-8"?> 
<configuration> 
    <appender name="stdout" class="ch.qos.logback.core.ConsoleAppender"> 
     <!-- encoders are assigned the type ch.qos.logback.classic.encoder.PatternLayoutEncoder by default --> 
     <encoder> 
      <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{5} - %msg%n 
      </pattern> 
     </encoder> 
    </appender> 
    <appender name="db" class="ch.qos.logback.classic.db.DBAppender"> 
     <connectionSource 
      class="ch.qos.logback.core.db.DriverManagerConnectionSource"> 
      <driverClass>org.postgresql.Driver</driverClass> 
      <url>jdbc:postgresql://localhost:5432/simple</url> 
      <user>postgres</user> 
      <password>root</password> <!-- no password --> 
     </connectionSource> 
    </appender> 

    <!-- the level of the root level is set to DEBUG by default. --> 
    <root level="TRACE"> 
     <appender-ref ref="stdout" /> 
     <appender-ref ref="db" /> 
    </root> 
</configuration> 

2.創建3個表

logging_event

logging_event_property

logging_event_exception

它們必須存在DBAppender可用於

之前的Log4J

https://logging.apache.org/log4j/2.x/manual/appenders.html#JDBCAppender

對於Log4J2

http://smasue.github.io/log4j2-spring-database-appender

+0

謝謝。我已經嘗試過「Logback」了。使用默認表格工作良好,但創建自定義表格/字段非常困難。 – Krish