2012-10-02 12 views
5

Używam SMTPAppender log4j do wysyłania mi e-maili po każdym wyjątku, ale wolałbym raczej agregować wiadomości e-mail w jeden e-mail z partią błędów, zamiast jednego e-maila dla każdego błędu.log4j SMTPAppender - wiadomości e-mail z wieloma błędami

Widziałem zmienną bufferSize, ale wydaje się, że jest ona dla wszystkich typów wiadomości, a nie tylko dla BŁĘDÓW.

Czy ktoś wie, jak mogę to osiągnąć?

Dzięki

Odpowiedz

0

można użyć: log4j.appender.myMail.evaluatorClass do implementują TriggeringEventEvaluator, w ten sposób można programowo decydowania kiedy/co wiadomości do wysłania. Aby uzyskać więcej informacji, zobacz: http://www.manning-sandbox.com/thread.jspa?threadID=9913.

+0

widzę przykład tam, co działa, aby wysłać wszystkie wiadomości, ale chciałbym tylko, aby wysłać ERROR i powyżej, a także zagreguj je w jeden e-mail. Jeśli to możliwe, czy mogę wysłać sygnał z mojego programu, aby wysłać wiadomość e-mail? – user1628194

+0

Korzystanie z niestandardowego narzędzia TriggeringEventEvaluator umożliwia wysyłanie niestandardowych wiadomości e-mail na zawartość/poziom specjalnej zawartości dziennika. – dan

+0

Udało mi się zaimplementować to teraz ... Ustawiłem zmienną na początku mojego programu na wartość false, a następnie prawdę, gdy program się zakończył. Ta zmienna jest sprawdzana w isTriggeringEvent() ... chodzi o to, że muszę napisać swój własny błąd po ustawieniu zmiennej na true tylko po to, aby uruchomić sprawdzanie isTriggeringEvent(). Czy jest inny sposób, aby wyłączyć e-mail? Byłoby dobrze, gdybym mógł zamienić ten komunikat o błędzie na komunikat informacyjny. – user1628194

0

Spróbuj dodać/użyć oceny np. poniżej w konfiguracji:

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

ustawić także atrybut stratnej true wraz z pożądanym rozmiarze bufora:

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

Po prostu próbowałem tego, ale wciąż otrzymuję jeden e-mail dla każdego błędu, który występuje. – user1628194

Powiązane problemy