註冊 | 登入 | 全文檢索 | 排行榜 |
![]() |
» JWorld@TW
» Java Tools
![]() ![]() |
![]() ![]() ![]() ![]() |
本主題所含的標籤 |
作者 | 利用log4j實作console log + file log + mail log + db log | ||
wing_zero
![]() Keroro捕獲~~是也 ![]() ![]() ![]() ![]() ![]() 發文: 213 積分: 9 ![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() 每天都要去查log4j的log作system daily check,讓我覺的很煩...所以就找找看log4j有沒有辦法作mail log跟db log。沒想到還真的有...相關設定方式如下,有需要的可以參考一下。
如果要用db log跟mail log的功能,記的把javamail跟jdbc driver相關jar檔放到系統裡。 db log跟mail log好用歸好用,不過...我自已試過後發現還是有下面這二點問題。 1.db log是每次寫一筆資料到db時,就建立一次db connection,效能很不好,log4j沒有提供可以設定connection pool的相關設定參數 2.mail log裡的"log4j.appender.MailLog.Threshold"參數值設定為"error"之外的值是沒有效果的。也就正說只有Logger Level為ERROR層級的錯誤才會發送mail 不知這二個問題是否有人有解呢 ![]() ![]() ![]() 俺的部落格 |
作者 | Re:利用log4j實作console log + file log + mail log + db log [Re:wing_zero] |
GERRYccc
![]() ![]() ![]() ![]() ![]() ![]() 發文: 31 積分: 0 ![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() org.apache.log4j.jdbc.JDBCAppender 繼承並覆寫它的資料庫連線方式,不知道有沒有用吼?!...ccc ======== 轉貼補充一下: 來源: http://my.so-net.net.tw/idealist/Java/Log4j.html 說明 階層 Log4j將輸出訊息分成五個等級,分別為DEBUG、INFO、WARN、ERROR、FATAL,在上面設定檔將輸出等級設為INFO,就表示INFO~FATAL等級的訊息將會輸出,因此DEBUG等級的訊息就會被忽略,如果將設定檔的第一行改為log4j.rootLogger=DEBUG, A1, A2,就會兩個訊息都輸出了。除了這五個等級外,也可以設為ALL或OFF, ALL很示全部訊息都輸出,OFF則表示不輸出訊息。 輸出格式 # %c 輸出日誌訊息所屬的類別的全名 # %d 輸出日誌時間點的日期或時間,指定格式的方式:%d{yyy-MM-dd HH:mm:ss }。 # %l 輸出日誌事件的發生位置,即輸出日誌訊息的語句處於它所在的類別的第幾行。 # %m 輸出訊息,如log(message)中的message。 # %n 輸出一個列尾符號。 # %p 輸出優先階層,即DEBUG,INFO,WARN,ERROR,FATAL。如果是調用debug()輸出的,則為DEBUG,依此類推。 # %r 輸出自應用啟動到輸出該日誌訊息所耗費的毫秒數。 # %t 輸出產生該日誌事件的線程名。 # %r 輸出自應用啟動到輸出該日誌訊息所耗費的毫秒數。 # %f 輸出日誌訊息所屬的類別的類別名。 值得注意的是A2的appender被設為org.apache.log4j.DailyRollingFileAppender表示Log4j會將日誌檔依日期分開。 ![]() ![]() |
作者 | Re:利用log4j實作console log + file log + mail log + db log [Re:wing_zero] |
ccdrumer
![]() ![]() ![]() ![]() ![]() ![]() 發文: 17 積分: 0 ![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() 第一個問題 http://logging.apache.org/log4j/docs/api/org/apache/log4j/jdbc/JDBCAppender.html 說明文件裡面說 可以自己 複寫 protected Connection getConnection() 方法 來做自己的 Connection pool 這樣可以解決嗎?? ![]() ![]() |
作者 | Re:利用log4j實作console log + file log + mail log + db log [Re:wing_zero] |
javachen
![]() ![]() ![]() ![]() ![]() ![]() 發文: 110 積分: 1 ![]() |
![]() ![]() ![]() ![]() ![]() ![]() ![]() 這個 log4j.appender.MailLog.Threshold=error 應該是要這樣吧? log4j.appender.mailAppender.Threshold=error ![]() ![]() |
» JWorld@TW » Java Tools |
![]() ![]() ![]() ![]() |
![]() ![]() ![]() |