Как я могу записывать операторы Hibernate SQL в файл журнала вместо консоли - PullRequest
0 голосов
/ 27 октября 2018

Мне нужно зарегистрировать оператор Hibernate sql в файл журнала вместо консоли.Я использую весеннюю загрузку JPA.и:

spring.jpa.show-sql=true
logging.path=/logs

1 Ответ

0 голосов
/ 27 октября 2018

Добавьте следующие строки в конфигурацию, пожалуйста ( как регистрировать SQL-операторы в Spring-boot )

#show sql statement
logging.level.org.hibernate.SQL=debug
#show sql values
logging.level.org.hibernate.type.descriptor.sql=trace

spring.jpa.show-sql вызывает запись операторов в стандартный вывод Hibernate show sql равен Stdout

Если вам нужен другой файл для журналов Hibernate, вы можете добавить logback.xml. и определите файл appender для org.hibernate logger

<configuration>
     <appender name="fileAppender"
                  class="ch.qos.logback.core.rolling.RollingFileAppender">
            <file>${DEV_HOME}/[yourlognamefile].log</file>
            <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
                <Pattern>
                    %d{yyyy-MM-dd HH:mm:ss} - %msg%n
                </Pattern>
            </encoder>

            <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
                <!-- rollover daily -->
                <fileNamePattern>${DEV_HOME}/archived/[yourlognamefile].%d{yyyy-MM-dd}.%i.log
                </fileNamePattern>
                <timeBasedFileNamingAndTriggeringPolicy
                        class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
                    <maxFileSize>10MB</maxFileSize>
                </timeBasedFileNamingAndTriggeringPolicy>
            </rollingPolicy>

        </appender>

    <logger name="org.hibernate" level="DEBUG" />
         <appender-ref ref="fileAppender"/>
    </logger>
</configuration>

Для получения дополнительной информации вы можете взглянуть на: https://dzone.com/articles/configuring-logback-with-spring-boot

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...