当前位置: 首页 > 知识库问答 >
问题:

logback日志总是Hibernate查询,将show_sql设置为false

谢胤
2023-03-14

有:

<logger name="org.hibernate.SQL" level="ERROR">
    </logger>

在我的logback.xml上,我希望不要将日志视为:

fromLogback 2015-03-17 14:20:56,967 39427 [http-bio-8080-exec-6] DEBUG org.hibernate.SQL - select statsitemi0_.itemId as itemId1_54_, statsitemi0_.companyId as companyI2_54_, statsitemi0_.createDate as

如您所见,第一个被打印为“fromLogback ”,这是因为我的appender看起来像:

<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <charset>UTF-8</charset>
            <pattern>fromLogback %d %-4relative [%thread] %-5level %logger{35} - %msg%n</pattern>
        </encoder>
    </appender>

但是hibernate调试级别似乎还处于活动状态,因为我可以看到所有查询。我有hibernate.show_sql=false属性

sessionBuilder.setProperty("hibernate.show_sql",propertiesUtil.getProperty("hibernate.show_sql"));
return sessionBuilder.buildSessionFactory();

只是为了确保我在构建会话工厂时打印了hibernate的所有属性,并且我看到show_sql的值正确设置为false。

为什么我仍然看到Hibernate的调试日志??

更新:如果我在logback.xml上使用,我可以在启动时看到这些日志

16:06:04,338 |-INFO in ch.qos.logback.classic.joran.action.LoggerAction - Setting level of logger [org.hibernate] to ERROR
16:06:04,338 |-INFO in ch.qos.logback.classic.joran.action.LoggerAction - Setting level of logger [com.notnoop.apns.internal.ApnsConnectionImpl] to ERROR
16:06:04,338 |-INFO in ch.qos.logback.classic.joran.action.RootLoggerAction - Setting level of ROOT logger to INFO
16:06:04,338 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [STDOUT] to Logger[ROOT]
16:06:04,338 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [FILE] to Logger[ROOT]

以及后面的一些行:

[http-bio-8080-exec-1] DEBUG org.hibernate.SQL - select propertyim0_.key_ as...

我没有logback-test.xml我的logback.xml:

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

    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <charset>UTF-8</charset>
            <pattern>%d %-4relative [%thread] %-5level %logger{35} - %msg%n</pattern>
        </encoder>
    </appender>

    <appender name="FILE" class="ch.qos.logback.core.FileAppender">
        <file>${catalina.base}/logs/liferay.log</file>
        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
            <charset>UTF-8</charset>
            <pattern>%d %-4relative [%thread] %-5level %logger{35} - %msg%n</pattern>
        </encoder>
    </appender>

    <!--<appender name="FILE_CACHE" class="ch.qos.logback.core.rolling.RollingFileAppender">-->
        <!--<file>${catalina.base}/logs/cache.log</file>-->
        <!--<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">-->
            <!--<fileNamePattern>${catalina.base}/logs/cache.%d{yyyy-MM-dd}.%i.log</fileNamePattern>-->
            <!--&lt;!&ndash; 30 días de historia &ndash;&gt;-->
            <!--<maxHistory>30</maxHistory>-->
        <!--</rollingPolicy>-->

        <!--<encoder>-->
            <!--<charset>UTF-8</charset>-->
            <!--<pattern>%d %-4relative [%thread] %-5level %logger{35} - %msg%n</pattern>-->
        <!--</encoder>-->
    <!--</appender>-->

    <appender name="ACCESSLOG" class="ch.qos.logback.core.FileAppender">
        <file>${catalina.base}/logs/portlet-shnm-access.log</file>
        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
            <charset>UTF-8</charset>
            <pattern>%msg%n</pattern>
        </encoder>
    </appender>


    <logger name="com.shn.mkt" level="INFO"/>

    <logger name="org.hibernate" level="ERROR"/>

    <logger name="com.notnoop.apns.internal.ApnsConnectionImpl" level="ERROR"/>

    <root level="INFO">
        <appender-ref ref="STDOUT"/>
        <appender-ref ref="FILE"/>
        <!--<appender-ref ref="ACCESSLOG"/>-->
    </root>

</configuration>

注意,我使用的是Spring Boot,但对于项目的规范,我不能使用应用程序。属性或应用程序。yml现在,所以我希望使用我自己的logback。xml就足够了。

共有1个答案

华英睿
2023-03-14

tomcat的文件setenv.sh:

JAVA_OPTS="$JAVA_OPTS -Dspring.profiles.active=worker,backoffice -Ddebug -Xms128m -Xmx8192m -XX:PermSize=128m -XX:MaxPermSize=256m"

<code>-Ddebug</code>是Spring启动的原因…抱歉,所有噪音。

 类似资料:
  • 我在我的应用程序中使用Jetty http客户端。我也在使用带有logback的SLF4J。 如何将Jetty的总体日志记录级别设置为Info?

  • 问题内容: 给出以下HQL查询: 我使用Query对象的方法进行设置。 我想使用对象进行设置,但是在查看Hibernate文档和方法列表时,我看不出要使用哪种明显的选择。有任何想法吗? 问题答案: 使用,的Javadoc在这里。 有四种变体可供选择。

  • 问题内容: 我正在使用logback,并且尝试在Java程序中以编程方式设置日志文件名(类似于以编程方式设置LogbackAppender路径),并且我尝试按以下方法调整该解决方案: 在logback-test.xml中: 然后再次在我的Java程序中: 但是结果是两个日志,一个完整并按我的意愿命名,例如“ 1319041145343.log”,另一个为空并命名为“ log_file_name_I

  • 我使用的是WebLogic10.3.6,我不能用给定的logback.xml为2个不同的追加器(com.my&root)控制不同的日志级别,我只希望文件追加器有跟踪级别,而在Weblogic终端下没有任何跟踪级别。问题是我在这两个方面得到相同的输出。

  • 本文向大家介绍MYSQL慢查询与日志的设置与测试,包括了MYSQL慢查询与日志的设置与测试的使用技巧和注意事项,需要的朋友参考一下 一、简介 开启慢查询日志,可以让MySQL记录下查询超过指定时间的语句,通过定位分析性能的瓶颈,才能更好的优化数据库系统的性能。 二、参数说明 slow_query_log 慢查询开启状态 slow_query_log_file 慢查询日志存放的位置(这个目录需要My

  • 慢查询日志是 Redis 提供的一个用于观察系统性能的功能, 这个功能的实现非常简单, 这里我们也简单地讲解一下。 本章先介绍和慢查询功能相关的数据结构和变量, 然后介绍 Redis 是如何记录命令的执行时间, 以及如何为执行超过限制事件的命令记录慢查询日志的。 相关数据结构 每条慢查询日志都以一个 slowlog.h/slowlogEntry 结构定义: typedef struct slowl