2012-10-02 16 views
5

मैं प्रत्येक अपवाद पर मुझे ईमेल करने के लिए log4j के SMTPAppender का उपयोग कर रहा हूं, लेकिन मैं वास्तव में प्रत्येक त्रुटि के लिए एक ईमेल के बजाय त्रुटियों के बैच के साथ एक ईमेल में ईमेल एकत्र करना पसंद करूंगा।log4j SMTPAppender - एकाधिक त्रुटि संदेशों को ईमेल करें

मैंने bufferSize वैरिएबल देखा है, लेकिन यह सभी प्रकार के संदेशों के लिए प्रतीत होता है, न केवल त्रुटियों।

क्या कोई जानता है कि मैं इसे कैसे प्राप्त कर सकता हूं?

धन्यवाद

उत्तर

0

आप उपयोग कर सकते हैं: log4j.appender.myMail.evaluatorClassTriggeringEventEvaluator, इस तरह से आप प्रोग्राम जब/क्या संदेश भेजने के लिए तय कर सकते हैं लागू करने के लिए। अधिक जानकारी के लिए देखें: http://www.manning-sandbox.com/thread.jspa?threadID=9913

+0

मैं उदाहरण वहाँ जो सभी संदेश भेजने के लिए काम करता है देखते हैं, लेकिन मैं केवल भेजना चाहते हैं त्रुटि और ऊपर, और उन्हें एक ईमेल में भी एकत्रित करें। यदि संभव हो तो क्या मैं अपने प्रोग्राम से ईमेल भेजने के लिए एक सिग्नल भेज सकता हूं? – user1628194

+0

एक कस्टम TriggeringEventEvaluator का उपयोग करने से आप एक विशेष लॉग संदेश सामग्री/स्तर पर एक कस्टम ईमेल भेजने की अनुमति देंगे। – dan

+0

मैंने इसे अभी कार्यान्वित करने में कामयाब रहा है ... मैंने अपने प्रोग्राम की शुरुआत में एक चर सेट किया है, और फिर प्रोग्राम खत्म होने पर सत्य है। यह चर isTriggeringEvent() में चेक किया गया है ... समस्या यह है कि ITriggeringEvent() की जांच को ट्रिगर करने के लिए चर को सही करने के बाद मुझे अपनी स्वयं की त्रुटि लिखनी होगी। क्या ईमेल बंद करने के लिए मेरे लिए कोई और तरीका है? यह अच्छा होगा अगर मैं उस त्रुटि संदेश को एक सूचना संदेश से बदल सकता हूं। – user1628194

0

एक मूल्यांकनकर्ता को जोड़ने/उपयोग करने का प्रयास करें उदा। नीचे दिए गए विन्यास में:

<evaluator type="log4net.Core.LevelEvaluator"> 
    <threshold value="ERROR"/> 
</evaluator> 

भी वांछित बफर आकार के साथ सत्य पर हानिपूर्ण विशेषता निर्धारित:

<lossy value="true" /> 
<bufferSize value="xxxx" /> 
+1

मैंने अभी यह कोशिश की है, लेकिन मुझे अभी भी होने वाली प्रत्येक त्रुटि के लिए एक ईमेल मिलता है। – user1628194