我可以使用log4j.smtpAppender触发附件(日志文件)的电子邮件。电子邮件附件使用log4j.smtpAppender
我目前正在使用此appender触发错误和致命级别异常的电子邮件。我可以添加日志文件在附件相同的电子邮件
log4j.appender.email=org.apache.log4j.net.SMTPAppender
我可以使用log4j.smtpAppender触发附件(日志文件)的电子邮件。电子邮件附件使用log4j.smtpAppender
我目前正在使用此appender触发错误和致命级别异常的电子邮件。我可以添加日志文件在附件相同的电子邮件
log4j.appender.email=org.apache.log4j.net.SMTPAppender
public static void emailAttachment
throws AddressException, MessagingException{
String host = mail.company.com;
String from = [email protected];
String to = [email protected];
String cc = [email protected];
Properties props = System.getProperties();
props.put("mail.smtp.host", host);
Session session = Session.getInstance(props, null);
MimeMessage message = new MimeMessage(session);
message.setFrom(new InternetAddress(from));
message.addRecipient(Message.RecipientType.TO, new InternetAddress(to));
message.addRecipient(Message.RecipientType.CC, new InternetAddress(cc));
message.setSubject("Email Notification");
MimeBodyPart messageBodyPart = new MimeBodyPart();
messageBodyPart.setText("email Body");
Multipart multipart = new MimeMultipart();
multipart.addBodyPart(messageBodyPart);
messageBodyPart = new MimeBodyPart();
DataSource source = new FileDataSource(fileAttachment);
messageBodyPart.setDataHandler(new DataHandler(source));
messageBodyPart.setFileName("attachment.pdf");
multipart.addBodyPart(messageBodyPart);
message.setContent(multipart);
Transport.send(message);
}
来源:jGuru.com
我认为你不能发送一个日志文件在同一封电子邮件。你当然可以配置几个appender来记录你的数据:例如一个发送电子邮件(SMTPAppender),其他打印到标准输出(ConsoleAppender)等。
此外,我不认为这是一个好主意,附上一个日志文件保存到同一封电子邮件中:每次发送新电子邮件时,日志文件将保持增长,并且假设您的日志长度大约为5MB ...然后日志记录会占用大量的处理能力。
不完全的日志文件。但其他文件是100KB。我发现javaMail更适合我的需求 – gmeka