2012-03-16 24 views
7

Làm thế nào tôi có thể theo dõi các yêu cầu SQL cho cơ sở dữ liệu nhúng trong bộ nhớ H2?Làm thế nào để theo dõi các yêu cầu SQL cho cơ sở dữ liệu trong bộ nhớ H2?

Tài liệu cho biết tệp theo dõi nằm trong cùng thư mục với tệp cơ sở dữ liệu, nhưng đối với cơ sở dữ liệu nhúng trong bộ nhớ, tôi không có thư mục cơ sở dữ liệu (trong Windows).

tôi đã cố gắng để chuyển hướng dấu vết vào một tập tin được đưa ra với slf4j/logback bằng cách sử dụng

TRACE_LEVEL_FIle=4;TRACE_LEVEL_SYSTEM_OUT=3 

trong URL cơ sở dữ liệu và các tập tin cấu hình logback.xml sau nhưng không có may mắn:

<configuration scan="true"> 
    <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> 
    <file>mylogfile.log</file> 
    <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> 
     <fileNamePattern>%d{yyyyMMdd}_mylogfile.log</fileNamePattern> 
    </rollingPolicy> 
    <encoder> 
     <pattern>%date{yyyyMMdd HH:mm:ss} %contextName[%thread] %level %logger{0} - %msg%n</pattern> 
    </encoder> 
    </appender> 

    <logger name="com.myapp" level="WARN"> 
    <appender-ref ref="FILE" /> 
    </logger> 

    <logger name="h2database" level="TRACE"> 
    <appender-ref ref="FILE" /> 
    </logger> --> 

    <root level="WARN"> 
    <appender-ref ref="FILE" /> 
    </root> 
</configuration> 

Tệp cấu hình đăng nhập của tôi hoạt động chính xác cho các nhật ký khác.

Bất kỳ ý tưởng nào?

+0

Xem thêm http://stackoverflow.com/questions/6124886/h2-and-query-logging – Vadzim

Trả lời

2

Tôi không hoàn toàn chắc chắn, nhưng theo thử nghiệm của tôi có vẻ như nếu bạn xóa TRACE_LEVEL_SYSTEM_OUT=3 thì nó sẽ hoạt động. Bạn có thể thử cái này không? Ví dụ URL cơ sở dữ liệu:

jdbc:h2:mem:test;TRACE_LEVEL_FIle=4 

thay vì

jdbc:h2:mem:test;TRACE_LEVEL_FIle=4;TRACE_LEVEL_SYSTEM_OUT=3 
+0

Cảm ơn bạn. Tôi quản lý để làm cho nó hoạt động chính xác với một bài kiểm tra đơn vị. Vấn đề dường như đến từ ứng dụng tôi đang sử dụng, kết nối trực tiếp tới cơ sở dữ liệu và cấu hình ghi nhật ký của nó (sử dụng đăng nhập commons) khiến cho nhật ký luôn được chuyển hướng đến bàn điều khiển chứ không phải tệp nhật ký như tôi muốn. – user1274500

Các vấn đề liên quan