2015-03-18 2 views
4

У меня есть прецедент, в котором я запускаю несколько тысяч SQL-запросов и набор журналов, как он есть, запись каждого запроса на консоль занимает много времени и делает время вызова на стороне клиента. Я попытался установить свойство logback.loglevel профиля dev в pom.xml в ERROR, но это не помогло.Как изменить уровень ведения гибернации в JHipster?

Так что мои вопросы:

  • Можно настроить уровень протоколирования для индивидуального вызова REST?
  • Как я могу глобально настроить уровни журналов для приложения?

ответ

1

Помимо изменения свойств spring.jpa.show_sql в application*.yml файлов, вы также можете попробовать изменить конфигурацию Logback в:

В файлах src/main/resources/logback-spring.xml и src/test/resources/logback-test.xml вы можете добавить следующие конфигурации:

Чтобы получить подробную информацию о журнале SQL, включая SQL значения параметров:

<logger name="org.hibernate.SQL" level="DEBUG"/> 
<logger name="org.hibernate.type" level="TRACE"/> 

Чтобы сделать SQL менее разговорчив:

<logger name="org.hibernate.SQL" level="DEBUG"/> 
<logger name="org.hibernate.type" level="TRACE"/> 

В качестве дополнительного бонуса, явно объявляя эти регистраторы в файлах конфигурации журнала, в протоколе Hibernate будет использоваться настройка макета Logback, например. показывая время и имя исполняемого потока.

spring.jpa.show_sqltrue имеет преимущество перед конфигурацией журнала - включая его менее полезную компоновку без времени и без имени исполняемого потока. Поэтому для моих собственных целей, Я предпочитаю установить spring.jpa.show_sql на false и вместо этого настроить logback-spring.xml (где аспекты конфигурации ведения журнала должны быть размещены в любом случае). Там, вы можете установить Spring profile-specific logging levels:

<springProfile name="dev, staging"> 
    <logger name="org.hibernate.SQL" level="DEBUG"/> <!-- set org.hibernate.SQL to DEBUG to see SQL statements --> 
    <logger name="org.hibernate.type" level="INFO"/> <!-- set org.hibernate.type to TRACE to see SQL parameters --> 
</springProfile> 
<springProfile name="prod"> 
    <logger name="org.hibernate.SQL" level="INFO"/> <!-- set org.hibernate.SQL to DEBUG to see SQL statements --> 
    <logger name="org.hibernate.type" level="INFO"/> <!-- set org.hibernate.type to TRACE to see SQL parameters --> 
</springProfile> 
-1

Вам нужно изменить два файла, как показано ниже:

application.yml:

spring: 

... 

jpa: 

    ... 
    show_sql: true 
    ... 

Logback-spring.xml

<logger name="org.hibernate.SQL" level="DEBUG">; 

Удачи.