2010-01-24 19 views
8

log4j कॉन्फ़िगरेशन के साथ प्रारंभ करने का सबसे आसान तरीका क्या है?log4j नमूना विन्यास फाइल (गुण फ़ाइल)

+3

सबसे आसान तरीका है, अपने मुख्य विधि में BasicConfigurator.configure() कर ';' –

+1

@Alexander, अपना रास्ता आसान लेकिन हमेशा उचित नहीं है, जब आप चौखटे के साथ काम (जो आजकल चौखटे के साथ काम नहीं करता है) आपको मुख्य विधि लिखना नहीं है। कभी-कभी वसंत या सर्लेट में आप पहले से ही नहीं जानते कि कोड का कौन सा टुकड़ा पहले चल रहा है। – flybywire

उत्तर

20

अपने classpath की जड़ में log4j.properties नाम की एक फ़ाइल रखो: और

log4j.rootLogger = ALL, Console 
log4j.appender.Console=org.apache.log4j.ConsoleAppender 
log4j.appender.Console.layout=org.apache.log4j.PatternLayout 
log4j.appender.Console.layout.conversionPattern=%m%n 

कुछ भी नहीं है की जरूरत है। Log4j इसे खोजेगा और स्वयं को कॉन्फ़िगर करेगा।

3

manual (स्पष्ट बताए जाने के जोखिम पर) पढ़ने योग्य है। कॉन्फ़िगरेशन विकल्पों का एक टन है, और एक बार जब आप सीखें और समझें कि क्या संभव है, तो आप कुछ बहुत शक्तिशाली लॉगिंग सिस्टम को कार्यान्वित कर सकते हैं।

5

अपाचे पर log4j पृष्ठों पर जाने और short introduction पढ़ने का सबसे आसान तरीका है। उनके पास प्रतिलिपि बनाने और पेस्ट करने के लिए तैयार नमूना log4j.configuration है।

1

यदि आप इसमें ठोकरें और log4j2 के लिए नमूना फ़ाइल की तलाश में हैं। जिस तरह से मैं इसे काम करने के लिए मिला था, बेस 'संसाधन' निर्देशिका में फ़ाइल नाम log4j2.xml बनाना था (मैं maven का उपयोग कर रहा हूं ताकि वह 'src/main/resource' था)

फिर नमूना कॉन्फ़िगरेशन की प्रतिलिपि बनाएँ मैनुअल: http://logging.apache.org/log4j/2.x/manual/configuration.html

<?xml version="1.0" encoding="UTF-8"?> 
<Configuration status="WARN"> 
    <Appenders> 
    <Console name="Console" target="SYSTEM_OUT"> 
     <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/> 
    </Console> 
    </Appenders> 
    <Loggers> 
    <Root level="error"> 
     <AppenderRef ref="Console"/> 
    </Root> 
    </Loggers> 
</Configuration> 

यह आपको एक अच्छा सरल सांत्वना लकड़हारा दे देंगे। मैं अनुशंसा करता हूं कि आप इसे कैसे दिखाना चाहते हैं और 'रूट स्तर =' को और अधिक समावेशी बनाने के लिए पैटर्न को संशोधित करें। और निश्चित रूप से, अधिक शक्तिशाली सेटिंग्स के लिए मैनुअल पढ़ें ...

0

कुछ अन्य उत्तरों के अलावा, मैं एक दृढ़ता से जोड़ता हूं क्योंकि यह कंसोल और डिबगर्स पर लॉग का उपयोग करने का सबसे बड़ा फायदा है; जब कोई वास्तविक समय में एप्लिकेशन कोड या ईवेंट पहले से ही नहीं हो सकता है।

!/"पथ"/"फ़ाइल नाम" फाइल सिस्टम की रूट पर लिखेंगे। "पथ"/"फ़ाइल नाम" क्लासपाथ रूट के सापेक्ष पथ पर लिखा जाएगा।

log4j.rootLogger = ALL, Console, default.file 
log4j.appender.default.file=org.apache.log4j.FileAppender 
log4j.appender.default.file.file={path}/{filename} 
log4j.appender.default.file.layout=org.apache.log4j.PatternLayout 
log4j.appender.default.file.layout.conversionPattern=%m%n 

log4j.appender.Console=org.apache.log4j.ConsoleAppender 
... 
संबंधित मुद्दे