Plumelog一個簡單易用的java分散式日誌元件。支援百億級別,日誌從蒐集到查詢,不用去文件中翻閱日誌方便快捷,支持查詢一個調用鏈的日誌,支持鏈路追踪,查看調用鏈耗時情況,在分佈式系統中也可以查詢關聯日誌,能夠幫助快速定位問題,簡單易用,沒有程式碼入侵,查詢介面友好,高效,方便,只要你是java系統,不要做任何專案改造,接入直接使用,日誌不落本地磁碟,無需關心日誌佔用應用伺服器磁碟問題,覺得專案好用幫忙點個星星,您的star是我們前進的動力。
Plumelog功能介紹
1.無入侵的分散式日誌系統,基於log4j、log4j2、logback蒐集日誌,設定鏈路ID,方便查詢關聯日誌
2.基於elasticsearch作為查詢引擎
3.高吞吐,查詢效率高
4.全程不佔應用程式本機磁碟空間,免維護;對於專案透明,不影響專案本身運行
5.無需修改舊項目,引入直接使用,支持duadfdso,支持springcloud
Plumelog架構
plumelog-core:核心元件包含日誌蒐集端,負責蒐集日誌並推送至kafka,redis等佇列
plumelog-server:負責把佇列中的日誌日誌非同步寫入到elasticsearch
plumelog-ui:前端展示,日誌查詢介面
plumelog-demo:基於springboot的使用案例
Plumelog使用方法
自己編譯安裝如下
前提:kafka或redis 和elasticsearch(6.8以上最好) 自行安裝完畢,相容已經做了,理論不用考慮ES
打包
maven deploy -DskipTests 上傳包到自己的私服
私服地址到plumelog/pom.xml改
UTF-8
http://172.16.249.94:4000
Plumelog 更新日誌
v3.5
增加lite啟動模式,此時不需要配置redis和es,lite模式下,擴充字段,錯誤統計,錯誤警報都不能使用,適合小規模專案使用
增加了plumelog-lite模組,plumelog-lite作為plumelog依賴包的形式存在,直接引用直接使用,無需部署,嵌入到專案中
增加日誌控制台,查看即時輸出狀況,在部署和測試時候堪稱神器,開啟控制台的時候會影響效能,注意使用時機
修復了鏈路追踪,有可能最外層不能顯示的bug
增加自動偵測ES,不需要再配置
增加自動配置ES最大分片數量,不需要去手動設置
優化了介面,優化警報介面出界保存按鈕顯示一半的bug
最佳化redis模式下配置,如果所有應用程式只用一個佇列redis,管理用redis可以不用配置,會自動啟用佇列的redis作為管理redis
修復已經已知的bug,其他優化
舊用戶升級直接取代plumelog-server-3.5.jar,重新啟動即可
lite模式,需升級客戶端到3.5
內嵌springboot-admin,方便管理springboot項目,可以利用springbootadmin,動態調整日誌輸出級別