2012-12-28 35 views
5

क्या किसी के पास log4j2 के साथ हाइबरनेट एसक्यूएल पैरामीटर लॉग करने का उदाहरण है? मुझे पता है कि log4j 1.x के साथ उन्हें कैसे लॉग इन करना है, लेकिन मैं log4j के 2.0 बीटा 3 संस्करण (अंतिम संस्करण अब तक) के साथ ऐसा नहीं कर सका।लॉग 4j2 लॉग हाइबरनेट पैरामीटर बाध्यकारी

धन्यवाद।

उत्तर

4

मैंने इस प्रश्न के अन्य प्रतिक्रियाएं देखी हैं, लेकिन कोई भी जो लॉग इन करता है केवल एसक्यूएल प्रतिस्थापन पैरामीटर। यदि आप org.hibernate.type लॉगर श्रेणी सेट करते हैं, तो आपको आउटपुट का एक टन मिल जाएगा!

मैं बस प्रतिस्थापित मूल्य देखना चाहता हूं। अगर ऐसा क्या तुम भी चाहते हो, पर पढ़ें ...

सारांश में लॉगर श्रेणी आप कॉन्फ़िगर करना चाहते कहा जाता है:

org.hibernate.type.descriptor.sql.BasicBinder 

और तुम TRACE

लिए अपने मूल्य निर्धारित करने की आवश्यकता है कि ने कहा, नीचे .properties शैली और एक्सएमएल विन्यास हैं जो इस काम को करते हैं।

.properties शैली:

log4j.rootLogger=INFO, Console 
log4j.appender.Console=org.apache.log4j.ConsoleAppender 
log4j.appender.Console.layout=org.apache.log4j.PatternLayout 
log4j.appender.Console.layout.ConversionPattern=%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n 
# Below is the line to dump ONLY the bind variables 
log4j.logger.org.hibernate.type.descriptor.sql.BasicBinder=TRACE 

एक्सएमएल:

10:58:47,631 TRACE [org.hibernate.type.descriptor.sql.BasicBinder] (Thread-5212 (HornetQ-client-global-threads-475186579)) binding parameter [1] as [BIGINT] - 165 
10:58:47,631 TRACE [org.hibernate.type.descriptor.sql.BasicBinder] (Thread-5212 (HornetQ-client-global-threads-475186579)) binding parameter [2] as [BIGINT] - 1390496100822 

मज़ा:

<?xml version="1.0" encoding="UTF-8" ?> 
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> 

<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"> 
    <appender name="Console" class="org.apache.log4j.ConsoleAppender"> 
    <layout class="org.apache.log4j.PatternLayout"> 
     <param name="ConversionPattern" value="%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/> 
    </layout> 
    </appender> 

    <root> 
    <priority value="DEBUG" /> 
    <appender-ref ref="Console" /> 
    </root> 

    <logger name="org.hibernate.type.descriptor.sql.BasicBinder"> 
    <level value="TRACE" /> 
    <appender-ref ref="Console" /> 
    </logger> 

</log4j:configuration> 

उत्पादन की तरह दिखाई देगा!