2011-12-20 10 views
6

साथ DailyRollingFileAppender मैं उपयोग कर रहा हूँ इस log4j.propertieslog4j: MaxFileSize विकल्प

log4j.rootCategory=Info, A1 
# A1 is a DailyRollingFileAppender 
log4j.appender.A1=org.apache.log4j.DailyRollingFileAppender 
log4j.appender.A1.file=D:/MyWeb.log 
log4j.appender.A1.datePattern='.'yyyy-MM-dd 
log4j.appender.A1.append=true 
log4j.appender.A1.layout=org.apache.log4j.PatternLayout 
log4j.appender.A1.layout.ConversionPattern=%-22d{dd/MMM/yyyy HH:mm:ss} - %m%n 

मैं तिथि वार आदेश में लॉग प्रदर्शित करना चाहते हैं, तो मैं DailyRollingFileAppender उपयोग कर रहा हूँ। लेकिन मुद्दा यह है कि इस लॉग फ़ाइल वर्तमान में अधिक डेटा (जिसका अर्थ है जब अनुरोधों का बहुत उस दिन किया जाता है) को रोक नहीं सकते यह पिछले लॉग डेटा

मैं विकल्प MaxFileSize का उपयोग करने की कोशिश की खो देता है:

log4j.appender.A1.MaxFileSize=10MB 

लेकिन सर्वर कंसोल पर इसकी देरी त्रुटि है कि संपत्ति MaxFileSize समर्थित नहीं है।

कृपया मुझे बताएं कि क्या कोई अन्य तरीका है कि लॉग तिथि के अनुसार प्रकट होता है और यह निर्दिष्ट डेटा जितना अधिक हो सकता है।

+0

http://stackoverflow.com/questions/2050615/configuring-multiple-log-files -इन-लॉग 4j-जबकि-उपयोग-श्रेणियां – nayakam

उत्तर

4

आप फ़ाइल एपेंडर क्लास का विस्तार कर सकते हैं और अपने कस्टम संस्करण को कार्यान्वित कर सकते हैं। अधिक जानकारी DailyRollingFileAppender

+0

बहुत बहुत धन्यवाद। – Pawan

+2

हाय थिलकन! क्या आप MaxFileSize प्रॉपर्टी के साथ कुछ कस्टम DailyRollingFileAppender कार्यान्वयन जानते हैं? क्या ऐसा है कि आप उपरोक्त के रूप में उस यूआरएल को पोस्ट कर सकते हैं। बहुत बहुत धन्यवाद। – Channa

1

RollingFileAppender का उपयोग करें, आप गलत एपेंडर का उपयोग कर रहे हैं!

+2

लेकिन रोलिंगफाइलएपेंडर आपको लॉग फ़ाइल नाम को टाइमस्टैम्प करने की अनुमति नहीं देता है। – Alex

4

आप प्रति घंटा बैकअप विकल्प के साथ DailyRollingFileAppender का उपयोग कर सकते हैं। यह हर घंटे लॉग रोल रोल करेगा।

हर घंटे का प्रयोग

log4j.appender.A1.datePattern = '।' Yyyy-MM-dd-एचएच