2014-04-23 16 views
6

Khi sau this dụ mùa xuân Tôi đã chờ đợi để xem kết quả như thế này:Thay đổi cấp độ nhật ký khung công tác trong dự án ví dụ đơn giản?

Creating tables 
Inserting customer record for John Woo 
Inserting customer record for Jeff Dean 
... 

Thay vào đó, tôi có một số DEBUG thông điệp log xen kẽ giữa mỗi dòng:

Creating tables 
12:31:16.474 [main] DEBUG o.s.jdbc.core.JdbcTemplate - Executing SQL statement [drop table customers if exists] 
12:31:16.484 [main] DEBUG o.s.jdbc.datasource.DataSourceUtils - Fetching JDBC Connection from DataSource 
12:31:16.484 [main] DEBUG o.s.j.d.SimpleDriverDataSource - Creating new JDBC Driver Connection to [jdbc:h2:mem] 
... 

Thesevariousanswers dường như chỉ ra rằng điều này có thể được giải quyết bằng cách thay đổi cấp độ nhật ký trong tệp log4j.properties của tôi. Tuy nhiên, trong các tệp the Spring example a log4j.properties không bao giờ được đề cập.

Điều thú vị là, mùa xuân không xuất hiện để được sử dụng trong nội bộ log4j:

$ grep -R "log4j" * 
Binary file build/libs/gs-relational-data-access-0.1.0.jar matches 

Tôi tưởng tượng tôi có thể sử dụng log4j để khắc phục vấn đề này, nhưng the manual dường như không có thông tin về nơi để đặt log4j.properties hay làm thế nào để tích hợp nó vào dự án này.

Làm cách nào để thay đổi cấp độ nhật ký để xóa những tuyên bố DEBUG?

Nếu tôi cần sử dụng tệp log4j.properties, tôi nên đặt nó ở đâu? Tôi có cần phải gắn nó vào tệp build.gradle của mình hoặc tham chiếu tệp đó trong các tệp .java của mình không?

Trả lời

20

Đây là các tác phẩm của Spring Boot được xử lý bên dưới với khai thác gỗ định tuyến jul, jcllog4j qua slf4j và sử dụng Logback qua slf4j như bạn có thể biết được tên lớp namespace rút ngắn phân biệt.

Tất cả điều này là độc đáo có thể nhìn thấy thông qua các công cụ sơ đồ IntelliJ trực tiếp trên tập tin pom:

enter image description here

Thiết lập này là sau khi thực hành tốt nhất as described/depicted in the SLF4J site:

slf4j bridge setup - logback implementation

Nhật ký là trò chuyện vì mức độ mùa xuân DEBUG. Để thay đổi điều đó:

1) Tạo một thư mục resources dưới <projectDir>/src/main như bạn sẽ có trong dự án Maven. 2) Tạo một file logback.xml trong đó có chứa:

<configuration> 

    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> 
     <encoder> 
      <pattern>web - %date [%thread] %-5level %logger{36} - %message%n 
      </pattern> 
     </encoder> 
    </appender> 

    <logger name="org.springframework" level="WARN" /> 

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

</configuration> 

và thì đấy!

Creating tables 
Inserting customer record for John Woo 
Inserting customer record for Jeff Dean 
Inserting customer record for Josh Bloch 
Inserting customer record for Josh Long 
Querying for customer records where first_name = 'Josh': 
Customer[id=3, firstName='Josh', lastName='Bloch'] 
Customer[id=4, firstName='Josh', lastName='Long'] 
Các vấn đề liên quan