У меня есть веб-приложение в весенней загрузке + Hibernate + Log4j, развернутый в JBOSS. Все hibernate sql запросы регистрируются в server.log, если мы используем «spring.jpa.show- sql = true» в application.properties. В соответствии с инструкцией Hibernate Log4j нам необходимо установить для этого свойства значение false, чтобы операторы sql регистрировались в отдельном файле журнала в соответствии с конфигурацией Log4j. Если мы установим значение false, то операторы sql также не будут записываться в отдельный файл журнала. Все другие связанные с приложением журналы регистрируются в отдельном файле журнала, кроме журналов гибернации. Пожалуйста, помогите решить эту проблему.
Below is the entry in application.properties file.
spring.jpa.show-sql = false
spring.jpa.open-in-view=false
spring.datasource.ucm.default-auto-commit=false
spring.jpa.properties.hibernate.enable_lazy_load_no_trans=true
spring.jpa.properties.hibernate.id.new_generator_mappings=false
spring.jackson.serialization.fail-on-empty-beans=false
# SQL statements and parameters
log4j.logger.org.hibernate.SQL=debug
log4j.logger.org.hibernate.type.descriptor.sql=trace
Log4j2. xml
<?xml version="1.0" encoding="UTF-8"?>
<Configuration monitorInterval="30">
<Properties>
<Property name="LOG_PATTERN">%d{yyyy-MM-dd'T'HH:mm:ss.SSSZ} %p %m%n
</Property>
<Property name="APP_LOG_ROOT">c:/log/VendorPortal</Property>
</Properties>
<Appenders>
<Console name="console" target="SYSTEM_OUT" follow="false">
<PatternLayout pattern="${LOG_PATTERN}" />
</Console>
<!-- File Appender -->
<RollingFile name="RollingFile"
fileName="c:/log/vendorportal.log"
filePattern="c:/log/vendorportal-%d{MM-dd-yyyy}.log"
ignoreExceptions="false">
<PatternLayout>
<Pattern>%d %p %c{1.} [%t] %m%n</Pattern>
</PatternLayout>
<Policies>
<TimeBasedTriggeringPolicy />
<SizeBasedTriggeringPolicy size="100 MB" />
</Policies>
</RollingFile>
<Console name="STDOUT" target="SYSTEM_OUT"
ignoreExceptions="false">
<PatternLayout pattern="%m%n" />
</Console>
</Appenders>
<Loggers>
<Logger name="org.springframework" additivity="false"
level="error">
<AppenderRef ref="RollingFile" />
</Logger>
<Logger name="org.hibernate" level="info" additivity="false">
<AppenderRef ref="RollingFile" />
</Logger>
<Logger name="org.hibernate.SQL" level="DEBUG"
additivity="false">
<AppenderRef ref="RollingFile" />
</Logger>
<Logger name="org.hibernate.type.descriptor.sql" level="TRACE"
additivity="false">
<AppenderRef ref="RollingFile" />
</Logger>
<Root level="error">
<AppenderRef ref="console" />
<AppenderRef ref="RollingFile" />
</Root>
</Loggers>
</Configuration>
pom. xml
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-log4j2</artifactId>
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
</exclusion>
</exclusions>
</dependency>