Ecco un frammento che contiene il mio Logback SMTPAppender
:Perché Logback SMTPAppender invia solo 1 email?
<appender name="logManager-smtpAppender" class="ch.qos.logback.classic.net.SMTPAppender">
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>WARN</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>NEUTRAL</onMismatch>
</filter>
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>ERROR</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
<asynchronousSending>false</asynchronousSending>
<smtpHost>my.smtp.host</smtpHost>
<to>[email protected]</to>
<from>[email protected]</from>
<username>my_smtp_user</username>
<password>my_smtp_password</password>
<subject>%logger{20} - %m</subject>
<layout class="ch.qos.logback.classic.html.HTMLLayout"/>
<cyclicBufferTracker class="ch.qos.logback.core.spi.CyclicBufferTracker">
<bufferSize>1</bufferSize>
</cyclicBufferTracker>
</appender>
Quando il seguente Java esegue:
logger.warn("This is a warning.");
logger.error("This is an error.");
ho solo 1 email. Impostando bufferSize
su 1, mi sarei aspettato di ricevere 2 email diverse con 1 messaggio di registro singolo in ciascuna di esse. Cosa sta succedendo?
Grazie @Waheed (e +1 per gli esempi di codice). Una cosa che ancora non ottengo è: cosa succede se aumento il bufferSize a 10 e poi registro, ad esempio, 12 messaggi ERROR? Riceverò 1 email con 10 messaggi di log? Se sì, cosa succede agli ultimi 2 messaggi (10 + 2 = 12)? Grazie ancora! –
Sì, se si imposta valore bufferSize su 10, verranno visualizzati solo gli ultimi 10 messaggi. Principalmente usiamo SMTPAppender per notificare all'amministratore/Ops che qualcosa è andato storto nella tua Applicazione. Quindi, non appena ha incontrato il registro ERROR, ti invierà una mail con i numeri di log che hai impostato. Per registro ERROR riceverai una mail. – Waheed
Grazie ancora (e +1!) Mi dispiace, ma non sto cercando di essere una peste qui, ma non riesco ancora a capire cosa sarebbe successo agli ultimi 2 messaggi di registro. Diciamo che ho un codice che lancia 12 'loger.error (" ... ")' messaggi in una riga, e 'bufferSize' è impostato su 10. Come hai detto, avrei ricevuto 1 email con 10 messaggi di ERRORE. ** Ma cosa succede agli ultimi 2 registri di ERRORE? ** Grazie ancora per tutto il tuo aiuto finora! –