使用Log4J监控系统日志邮件警报
?
使用Log4J監控系統日志郵件警報
?
前言
在系統上線后,有時候遇到系統故障,這時候就可以登錄服務器查看系統日志來排查問題。但是需要登錄服務器,下載查找相關異常日志比較麻煩。而且沒有監控的話,也無法實時了解到系統是否正常運行。那么有沒有一種好辦法將系統異常信息實時反饋給相關人員呢?
本文講的就是借助Log4J來記錄程序運行日志,當一旦發現系統異?;蛘咦约憾x的其他一些情況發生時,及時通過郵件形式發送給相關負責人,并附上相關的系統日志信息,這樣負責人就可以實時便捷的監控到系統的狀態和相關異常信息。
另外
需要了解Log4J組件的使用,可以查看我以前寫的這篇博客:Log4J的配置與使用詳解[戳我]。
優點
采用這種方式的優點有:
環境
導入依賴jar包:
1.?log4j-1.2.17.jar
官網下載地址[戳我]
目前log4j最新版是1.2.17。低版本的log4j無法實現郵件發送功能,因為版本低于log4j-1.2.14.jar的不支持SMTP認證。
發送郵件的一個重要的類是SMTPAppender,在1.2.8的版本中,SMTPAppender沒有SMTPUsername和SMTPPassword屬性。這兩個屬性分別是登錄SMTP服務器發送認證的用戶名和密碼。
2.?mail-1.4.jar
發送郵件當然需要用到JavaMail包啦。
3.?activation-1.1.jar
配置
配置log4j.properties文件,如下:
1 log4j.rootLogger=DEBUG, MAIL 2 3 log4j.appender.MAIL=org.apache.log4j.net.SMTPAppender 4 log4j.appender.MAIL.Threshold=ERROR 5 log4j.appender.MAIL.BufferSize=10 6 log4j.appender.MAIL.From=123@qq.com 7 log4j.appender.MAIL.SMTPHost=smtp.qq.com 8 log4j.appender.MAIL.SMTPUsername=123 9 log4j.appender.MAIL.SMTPPassword=*** 10 log4j.appender.MAIL.SMTPDebug=false 11 log4j.appender.MAIL.Subject=Log4JErrorMessage 12 log4j.appender.MAIL.To=123@qq.com 13 log4j.appender.MAIL.layout=org.apache.log4j.PatternLayout 14 log4j.appender.MAIL.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [%t] %-5p %c %x -- %m%n? 每行配置詳解:
3.log4j的郵件發送appender,如果有必要你可以寫自己的appender。
4.發送郵件的門檻,僅當等于或高于ERROR級別時,郵件才被發送。
5.緩存文件大小,日志達到10k時發送Email。
6.發送郵件的郵箱帳號。
7.SMTP郵件發送服務器地址。
8.SMTP發送認證的帳號名。
9.SMTP發送認證帳號的密碼。
10.是否打印調試信息,如果選true,則會輸出和SMTP之間的握手等詳細信息
11.郵件主題。
12.發送到什么郵箱,如果要發送給多個郵箱,則用逗號分隔。
其他
如果需要抄送給某人,則添加如下配置:
log4j.appender.MAIL.Bcc=xxx@xxx.xxx想讓郵件內容日志以HTML格式來輸出,則配置:
log4j.appender.MAIL.layout=org.apache.log4j.HTMLLayout輸出到郵件中顯示如下圖:
?
轉載于:https://www.cnblogs.com/hellojava/p/3597306.html
總結
以上是生活随笔為你收集整理的使用Log4J监控系统日志邮件警报的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 西门子step7安装注册表删除_如何完全
- 下一篇: Windows 系统补丁管理策略