使用 SLF4J 的時候,同時使用很多開源函式庫,會很容易導致各種 log 跑不出來或者 dependency 衝突的問題
本質上是因為不同開源函式庫,各自使用了不同的 logging framework
因而導致了 log 被輸出到沒有被設定的實作,或者相同的實作被重複綁定等等。
Software entities (class, modules, functions, etc.) should be open for extension, but closed for modification. Junior programmers create simple solutions to simple problems. Senior programmers create complex solutions to complex problems. Great programmers find simple solutions to complex problems. 註1:本部落格的範例程式碼在 2015 年以前的文章中,大多是以全型空白做縮排。如需服用,請自行用文字編輯器的取代功能把全型空白取代成半型空白。
- Bertrand Meyer
- Charles Connell
註2:本部落格的內容授權請參閱部落格底部的授權宣告。
2017年12月19日 星期二
SLF4J 與其他 logging framework 實作綁定與橋接的關聯
2016年9月6日 星期二
SLF4J 與 Logback 的運作流程
最近因為工作需要,開始在研究如何自定義 logback 的 Appender
不過在開始嘗試實作之前,因為想要知道整個 slf4j 到 logback 等的整個執行流程為何
因此就做了這篇的簡單的研究。
2015年10月29日 星期四
使用 logback 時,在 Jetty 上忽略 Jetty 產生的 log
在部署專案時,嘗試了使用 slf4j + logback
不過部署到 Jetty 上就發現 Jetty 瘋狂地印出 Jetty 自己運行時的 debug log
變成要在 log 海中找到自己的 application log 非常花時間。
不過部署到 Jetty 上就發現 Jetty 瘋狂地印出 Jetty 自己運行時的 debug log
變成要在 log 海中找到自己的 application log 非常花時間。
2015年10月5日 星期一
在 Jetty 9 上使用 Logger
從 Tomcat 改用 Jetty 以後,第一個遇到的問題就是,以前用的 Log4j 好像沒有反應了。
查了一下,Jetty 好像預設使用 slf4j(如果 classpath 中存在 slf4j 的話)[1]
所以似乎比較建議使用 slf4j 作為 Logger。
查了一下,Jetty 好像預設使用 slf4j(如果 classpath 中存在 slf4j 的話)[1]
所以似乎比較建議使用 slf4j 作為 Logger。
訂閱:
文章 (Atom)