首页 > 解决方案 > 我可以使用 Springs JpaRepository 检索已使用 DBAppender 附加的 Logback LoggingEvent 记录吗

问题描述

我正在开发的 spring-boot 应用程序使用 Logback 的经典DBAppender方法将日志条目添加到(Postgres)数据库。

我想访问这些记录,最好使用JpaRepositoryfor LoggingEvent

我尝试创建LoggingEvent与 Logback 自己的LoggingEvent类的架构匹配的自己的实体,并将其设为 Jpa @Entity。但是,logging_event为我的LoggingEvent班级使用该表似乎在某种程度上阻止了 Logback 使用该表本身。附加了一些日志条目,但没有附加其他日志条目(例如来自 springRestController的所有日志)。

在不干扰 Logback 的数据库附加程序的情况下,访问这些条目的最灵活的方式是什么?

logback.xml

<?xml version="1.0" encoding="UTF-8" ?>
<configuration>

    <property resource="config.properties"/>
    <property resource="application.properties"/>
    <property name="LOGS" value="./logs"/>

    <!--APPEND LOG TO DATABASE-->
    <appender name="Database" 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/databasename</url>
            <user>postgres</user>
            <password>postgres</password>
        </connectionSource>
    </appender>

    <root level="info">
        <appender-ref ref="Database"/>
    </root>

</configuration>

标签: javaspringspring-data-jpalogbackspring-logback

解决方案


推荐阅读