2011-03-30 13 views
6

हाय मैं एक नौसिखिया हूं और जिस एप्लिकेशन में मैं वर्तमान में स्ट्रैट्स 1.2 और जावा का उपयोग करने के लिए कोडिंग कर रहा हूं। वर्तमान में हम लॉग फाइलों के लिए लॉग 4j का उपयोग करते हैं लेकिन मुझे एसएमटीपी एपेंडर को लागू करने की आवश्यकता है ताकि हमारी त्रुटियां हमें ईमेल कर सकें।लॉग 4j एसएमटीपी एपेंडर

मैंने किसी भी भाग्य के साथ त्रुटियों को ईमेल करने के लिए सब कुछ करने की कोशिश की है। नीचे हमारी log4j.properties फ़ाइल है।

कोई सुझाव?

धन्यवाद!

log4j.rootLogger= INFO, stdout, logfile, mail 

log4j.appender.stdout=org.apache.log4j.ConsoleAppender 
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 
log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - <%m>%n 

# Keep three backup files 
log4j.appender.logfile.MaxBackupIndex=3 
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout 
log4j.appender.logfile.layout.ConversionPattern=%d %p [%c] - <%m>%n 
log4j.appender.logfile=org.apache.log4j.RollingFileAppender 
log4j.appender.logfile.File=C:/LOGS/WIRE.log 
log4j.appender.logfile.MaxFileSize=2048KB 

#email appender 
log4j.appender.mail=org.apache.log4j.net.SMTPAppender 
log4j.appender.mail.BufferSize=1 
log4j.appender.mail.SMTPHost=smtp.serverhere.com 
[email protected] 
[email protected] 
log4j.appender.mail.Subject=Application Error 
log4j.appender.mail.threshold=error 
log4j.appender.mail.layout=org.apache.log4j.PatternLayout 
log4j.appender.mail.layout.ConversionPattern=%d %p [%c] - <%m>%n 


# Hibernates use of the org.apache classes spews out stuff like mad. 
log4j.logger.org.apache=INFO 

# Springframework is very talkative too. 
log4j.logger.org.springframework=INFO 

# acegisecurity 
#log4j.logger.org.acegisecurity = INFO 

# Quartz trigger checking 
log4j.logger.org.quartz.impl.jdbcjobstore=INFO 
#log4j.logger.org.springframework.scheduling.quartz=INFO 

उत्तर

5

डिफ़ॉल्ट रूप से, appender केवल एक ईमेल जब कुछ ERROR or FATAL levels पर लॉग ऑन है भेजता है। एक साइड नोट के रूप में, ऐसा प्रतीत होता है कि आपकी दहलीज संपत्ति में अनुचित मामला हो सकता है। मेरा मानना ​​है कि:

log4j.appender.mail.threshold=error 

log4j.appender.mail.Threshold=error 

संपादित करें ...

log4j log4j.debug configuration property कॉन्फ़िगर करके डिबग मोड में रखा जा सकता है किया जाना चाहिए। यह एसएमटीपी एपेंडर के संबंध में कुछ आउटपुट प्रदान कर सकता है।

+0

मैं इसे किसी भी त्रुटि या घातक स्तर के ईमेल करने के लिए प्राप्त करने की कोशिश कर रहा हूं। मैंने आपके सुझाव का प्रयास किया, लेकिन मदद नहीं की। क्या डीबगिंग उद्देश्यों के लिए log4j के लिए कोई प्रकार का लॉग है? – Brian

+1

@ ब्रायन I ने "डीबग" मोड के बारे में जानकारी जोड़ा। हमने हाल ही में लॉगबैक पर स्विच किया है (जिसे सेकी गुलुक द्वारा भी लिखा गया था)। इसे कुछ महीनों तक इस्तेमाल करने के बाद, मैं इसे log4j पर अधिक पसंद करता हूं: http://logback.qos.ch/reasonsToSwitch.html –

0

त्रुटि स्तर में रूट लॉगर को परिभाषित करें और चयनित संकुल के लिए इसे ओवरराइड करें। मेल एपेंडर त्रुटि स्तर में रहेगा।

# Log appenders 
#log4j.rootLogger=INFO, CONSOLE 
log4j.rootLogger=ERROR, FILE, MAIL 

# Log levels 
log4j.logger.com.example.application=INFO 
log4j.logger.com.example.application.package=DEBUG 


# CONSOLE 
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender 
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout 
log4j.appender.CONSOLE.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5r %-5p [%t] %c{2} - %m%n 
log4j.appender.CONSOLE.Encoding=UTF-8 


# FILE 
log4j.appender.FILE=org.apache.log4j.RollingFileAppender 
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout 
log4j.appender.FILE.File=/tmp/application.log 
log4j.appender.FILE.MaxFileSize=1000KB 
log4j.appender.FILE.MaxBackupIndex=99 
log4j.appender.FILE.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5r %-5p [%t] %c{2} - %m%n 
log4j.appender.FILE.Encoding=UTF-8 


# MAIL 
log4j.appender.MAIL=org.apache.log4j.net.SMTPAppender 
log4j.appender.MAIL.BufferSize=1 
log4j.appender.MAIL.SMTPHost=smtp.example.com 
[email protected] 
[email protected] 
log4j.appender.MAIL.Subject=Exception in Application 
log4j.appender.MAIL.layout=org.apache.log4j.PatternLayout 
log4j.appender.MAIL.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5r %-5p [%t] %c{2} - %m%n 
संबंधित मुद्दे