2012-03-16 6 views
7

मैं H2 इन-मेमोरी एम्बेडेड डेटाबेस के लिए SQL अनुरोधों का पता कैसे लगा सकता हूं?H2 इन-मेमोरी डेटाबेस के लिए SQL अनुरोधों का पता कैसे लगाएं?

प्रलेखन का कहना है कि ट्रेस फ़ाइल डेटाबेस फ़ाइल के समान निर्देशिका में स्थित है, लेकिन इन-मेमोरी एम्बेडेड डेटाबेस के लिए मेरे पास कोई डेटाबेस निर्देशिका नहीं है (विंडोज़ के तहत)।

मैं और

TRACE_LEVEL_FIle=4;TRACE_LEVEL_SYSTEM_OUT=3 
डेटाबेस URL में

का उपयोग करके slf4j/logback साथ एक दिया फाइल करने के लिए निशान अनुप्रेषित करने की कोशिश की निम्नलिखित logback.xml कॉन्फ़िग फ़ाइल लेकिन कोई भाग्य के साथ:

<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> 

मेरी लॉगबैक कॉन्फ़िगरेशन फ़ाइल अन्य लॉग के लिए सही तरीके से काम करती है।

कोई विचार?

+0

भी देखें http://stackoverflow.com/questions/6124886/h2-and-query-logging – Vadzim

उत्तर

2

मुझे पूरी तरह से यकीन नहीं है, लेकिन मेरे परीक्षण के अनुसार ऐसा लगता है कि अगर आप TRACE_LEVEL_SYSTEM_OUT=3 हटाते हैं तो यह काम करेगा। क्या आप इसे आजमा सकते हैं? उदाहरण डेटाबेस यूआरएल:

jdbc:h2:mem:test;TRACE_LEVEL_FIle=4 

बजाय

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

धन्यवाद। मैं इसे यूनिट परीक्षण के साथ सही तरीके से काम करने में कामयाब रहा। यह समस्या उस एप्लिकेशन से आती है जो मैं उपयोग कर रहा हूं जो सीधे डेटाबेस और इसकी लॉगिंग कॉन्फ़िगरेशन (कॉमन्स लॉगिंग का उपयोग करके) से जोड़ती है जो लॉग को हमेशा कंसोल पर रीडायरेक्ट करता है, न कि लॉग फ़ाइल को मैं चाहता हूं। – user1274500

संबंधित मुद्दे