2012-10-02 7 views
5

Sto utilizzando SMTPAppender di log4j per inviarmi un'e-mail su ogni eccezione, ma preferirei che aggregasse le e-mail in un'unica e-mail con una serie di errori anziché una e-mail per ogni errore.log4j SMTPAppender - Email più messaggi di errore

Ho visto la variabile bufferSize ma sembra essere per tutti i tipi di messaggio, non solo ERRORI.

Qualcuno sa come potrei ottenere questo?

Grazie

risposta

0

È possibile utilizzare: log4j.appender.myMail.evaluatorClass al implementano il TriggeringEventEvaluator, in questo modo è possibile a livello di codice decidere quando/quali messaggi per inviare. Vedi: http://www.manning-sandbox.com/thread.jspa?threadID=9913 per maggiori dettagli.

+0

vedo nell'esempio ci che opera per inviare tutti i messaggi, ma desidero solo per inviare ERRORE e oltre, e anche aggregarli in un'unica email. Se possibile, posso inviare un segnale dal mio programma per inviare l'e-mail? – user1628194

+0

L'utilizzo di un TriggeringEventEvaluator personalizzato consente di inviare un'e-mail personalizzata su un contenuto/livello di messaggi di registro speciali. – dan

+0

Sono riuscito a implementare questo ora ... Ho impostato una variabile all'inizio del mio programma su false, e quindi true quando il programma è finito. Questa variabile è selezionata isTriggeringEvent() ... il problema è che ho bisogno di scrivere il mio errore dopo aver impostato la variabile su true solo per attivare un controllo di isTriggeringEvent(). C'è un altro modo per far sparare l'email? Sarebbe bello se potessi sostituire quel messaggio di errore con un messaggio informativo. – user1628194

0

Prova ad aggiungere/utilizzare un Evaluator ad es. sotto nella configurazione:

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

impostare anche attributo lossy true insieme con la dimensione del buffer desiderata:

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

Ho appena provato questo, ma ricevo ancora una e-mail per ogni errore che si verifica. – user1628194