Olá, Pessoal!
Estou tentando entender como utilizar o log4j para envio de e-mails com logs e cheguei até um exemplo prático nesse site:
Da forma como está no site atualmente não funciona, então estou tentando adaptá-lo, porém ainda não consegui utilizar.
A primeira coisa foi que fiz foi passar o arquivo log4j.xml para log4j.properties conforme abaixo:
log4j.rootLogger=error,mail
log4j.appender.mail=org.apache.log4j.net.SMTPAppender
log4j.appender.mail.Threshold=ERROR
log4j.appender.mail.SMTPHost=smtp-mail.outlook.com
log4j.appender.mail.SMTPPassword=*********
log4j.appender.mail.SMTPUsername=email@hotmail.com
log4j.appender.mail.From=email@hotmail.com
log4j.appender.mail.Subject=Trata-se de um teste.
log4j.appender.mail.To=destinatario@gmail.com
log4j.appender.mail.layout=org.apache.log4j.HTMLLayout
log4j.appender.mail.BufferSize=1
log4j.appender.mail.SMTPPort=587
log4j.appender.mail.SMTPProtocol=stmps
E Alterei algumas coisas na classe de teste:
public class Log4jMailNotiferTest {
private static Logger logger = LoggerFactory.getLogger(Log4jMailNotiferTest.class);
/**
* To test whether fatal log sent to email id or not.
*
* @param args
*/
public static void main(String[] args) {
try {
System.out.println("Inicio");
throw new Exception("Generating exception to test Log4j mail notification...");
} catch (Exception ex) {
Properties prop = new Properties();
prop.put("mail.smtp.starttls.enable","true");
logger.error("Test Result : ", ex);
System.out.println("Fim");
}
}
}
Estou usando as bibliotecas:
log4j-1.2.17.jar
javax.mail-1.6.0.jar
E depois de muitos erros, e horas investidas, desisti temporariamente nesse erro:
Inicio
log4j:ERROR Error occured while sending e-mail notification.
javax.mail.NoSuchProviderException: No provider for stmps
at javax.mail.Session.getProvider(Session.java:514)
at javax.mail.Session.getTransport(Session.java:712)
at javax.mail.Session.getTransport(Session.java:693)
at javax.mail.Session.getTransport(Session.java:750)
at javax.mail.Transport.send0(Transport.java:249)
at javax.mail.Transport.send(Transport.java:124)
at org.apache.log4j.net.SMTPAppender.sendBuffer(SMTPAppender.java:416)
at org.apache.log4j.net.SMTPAppender.append(SMTPAppender.java:256)
at org.apache.log4j.AppenderSkeleton.doAppend(AppenderSkeleton.java:251)
at org.apache.log4j.helpers.AppenderAttachableImpl.appendLoopOnAppenders(AppenderAttachableImpl.java:66)
at org.apache.log4j.Category.callAppenders(Category.java:206)
at org.apache.log4j.Category.forcedLog(Category.java:391)
at org.apache.log4j.Category.log(Category.java:856)
at org.slf4j.impl.Log4jLoggerAdapter.error(Log4jLoggerAdapter.java:575)
at com.srccodes.examples.Log4jMailNotiferTest.main(Log4jMailNotiferTest.java:32)
Fim
Alguém sabe a configuração exata para envio de e-mail, para evitar esses erros?
Agradecido pela Atenção!