log4j实现发送邮件功能

简介: log4j实现发送邮件功能

引言


最近预上线的一个机器人项目,因为这个项目中有很多的AI的东西,整个项目分为三部分组成,web工程——FS——NLU,整个web工程都是由我来负责,后面两部分有大数据部门的东西负责,因为后面这两部分对于我们贷后行业来说都是比较超前的,所以在整个连调的过程中会有很多的异常的情况,但是很多的时候都是后面两部分的原因,但是每次都需要我去查看日志,之前我通logstash将日志收集到了es中,但是我觉得不是很好。有事能发邮件就好了,所以小编查了相关的资料,之前我用python写了一个脚本,可利用Crontab或者计划任务来指定时间运行。虽然已经实现了,但是这个过程相对来说比较复杂,后来发现通过log4j可以直接将error信息发送出邮件。


1、引入相关jar


 <dependency>
             <groupId>javax.activation</groupId>
             <artifactId>activation</artifactId>
             <version>1.1</version>
        </dependency>
        <dependency>
             <groupId>javax.mail</groupId>
             <artifactId>mail</artifactId>
             <version>1.4</version>
        </dependency>

2、相关配置

log4j.rootLogger=info, console, logFile,MAIL
## MAIL
log4j.appender.MAIL=org.apache.log4j.net.SMTPAppender
log4j.appender.MAIL.Threshold=ERROR
log4j.appender.MAIL.BufferSize=1
#smtp服务地址。不用163的那就改了吧,亲。
log4j.appender.MAIL.SMTPHost=smtp.exmail.qq.com
#邮件标题
log4j.appender.MAIL.Subject=ErrorMessage
#发件邮箱
log4j.appender.MAIL.From=abc@zhiqingfin.com
#收件邮箱
log4j.appender.MAIL.To=abc@aicuishou.com,
#发件箱登陆用户名
log4j.appender.MAIL.SMTPUsername=abc@zhiqingfin.com
#发件箱登陆密码
log4j.appender.MAIL.SMTPPassword=abc
log4j.appender.MAIL.layout=org.apache.log4j.PatternLayout
log4j.appender.MAIL.layout.ConversionPattern=[ErrorMessage] %d - %c -%-4r [%t] %-5p %c %x - %m%n

3、大功告成


20180919193908759.png


这种方式非常的简单,所以当我们实现了一种方式以后,还需要一下是否 有更简单的方式,来满足我们的需求,方法没有更好,只有更合适!


这样我就可以通过邮件知道系统是否正常了,不用查看什么文件了,不论在哪儿都知道系统是否正常!后面我会分享通过python脚本的监控方式!


目录
相关文章
|
JavaScript 前端开发
【导出Excel】Vue实现导出下载Excel文件(blob文件流)--亲测可用
【导出Excel】Vue实现导出下载Excel文件(blob文件流)--亲测可用
【导出Excel】Vue实现导出下载Excel文件(blob文件流)--亲测可用
|
4月前
|
Java
Java 中 Exception 和 Error 的区别
在 Java 中,`Exception` 和 `Error` 都是 `Throwable` 的子类,用于表示程序运行时的异常情况。`Exception` 表示可被捕获和处理的异常,分为受检异常(Checked)和非受检异常(Unchecked),通常用于程序级别的错误处理。而 `Error` 表示严重的系统级问题,如内存不足或 JVM 错误,一般不建议捕获和处理。编写程序时应重点关注 `Exception` 的处理,确保程序稳定性。
108 0
|
Java Maven
使用java语言制作一个窗体(弹窗),用来收集用户输入的内容
该博客文章介绍了如何使用Java Swing中的JFrame创建一个窗体来收集用户输入的内容,并提供了详细的实现步骤和完整代码示例。
使用java语言制作一个窗体(弹窗),用来收集用户输入的内容
如何在Java中实现自定义注解和处理器
如何在Java中实现自定义注解和处理器
|
小程序 JavaScript 前端开发
基于微信小程序的宠物寄养平台(毕业设计,附源码,教程)
基于微信小程序的宠物寄养平台(毕业设计,附源码,教程)
|
存储 SQL Java
Java数据库备份与恢复的全面指南
Java数据库备份与恢复的全面指南
|
消息中间件 JSON Java
Springboot支付宝沙箱支付---完整详细步骤
Springboot支付宝沙箱支付---完整详细步骤
2595 1
|
安全 Java API
Java 18 概述:新特性一览
Java 18 作为 Java 平台的最新版本,引入了多项令人振奋的新特性和改进,包括模式匹配、记录类型、流库改进、外部函数与内存 API 以及并发处理增强。这些新功能不仅提升了开发者的生产力,还显著增强了 Java 的性能和安全性。本文将详细介绍 Java 18 的主要新特性,并通过代码示例帮助读者更好地理解和应用这些功能。
250 3
Invalid bound statement (not found)错误【已解决】
Invalid bound statement (not found)错误【已解决】
1801 1
|
JavaScript
vue element 导出blob后台文件流xlsx文件自动下载(且规避乱码)
vue element 导出blob后台文件流xlsx文件自动下载(且规避乱码)