Log4Grid分布式應(yīng)用日志管理
Log4Grid 是一款開(kāi)源分布式應(yīng)用監(jiān)控和日志管理系統(tǒng),通過(guò)該系統(tǒng)可以實(shí)時(shí)查看每個(gè)應(yīng)用的進(jìn)程情況,還能看到相應(yīng)用戶記錄的程序處理日志信息。為了保證不對(duì)用戶現(xiàn)有程序的改動(dòng),Log4Grid 提供相應(yīng) Log4Net 的日志插件,通過(guò)插件應(yīng)用在不修改代碼的情況就可以把插件添加到 Log4net 的配置中,實(shí)現(xiàn)將監(jiān)控信息和日志自動(dòng)提交給管理系統(tǒng)。
日志功能管理
Log4Grid提供一個(gè)Web界面用一監(jiān)控和管理應(yīng)用日志,通過(guò)應(yīng)該Web管理模塊相關(guān)人員可以實(shí)時(shí)查看應(yīng)用的CPU/內(nèi)存使用情況和應(yīng)該產(chǎn)生的日志.
管理模塊的右邊是應(yīng)用部所在服務(wù)器的情況,而右邊列表則是相關(guān)應(yīng)用所在服務(wù)器產(chǎn)生的應(yīng)用日志.如果某個(gè)應(yīng)用出現(xiàn)異常那會(huì)在應(yīng)用服務(wù)列表中反映出來(lái).
這樣相關(guān)人員就能馬上知道那些應(yīng)用存在異常的情況.
信息收集服務(wù)
Log4Grid提供個(gè)專門的服務(wù)用收集各應(yīng)用的日志和應(yīng)用統(tǒng)計(jì)信息,并寫入相應(yīng)的存儲(chǔ).服務(wù)采用UDP作為通訊協(xié)議,而應(yīng)用協(xié)議則采用 Protobuf.服務(wù)分別提供Console和windows servcie兩種模式.使用者可以根據(jù)自己的情況來(lái)啟用相應(yīng)的服務(wù)程序.
自定義日志存儲(chǔ)
系統(tǒng)默認(rèn)實(shí)現(xiàn)了基于sqlite的日志存儲(chǔ),然而對(duì)于大量日志存儲(chǔ)的情況下sqlite顯然很難滿足實(shí)際應(yīng)用的需要.使用者可以根據(jù)自己實(shí)現(xiàn)的情況來(lái)實(shí)現(xiàn)具體的日志存儲(chǔ)和操作提供設(shè)備.具體查看Log4Grid.Interfaces這個(gè)接口的描述.
日志插件
為了讓日志收集的前提下不調(diào)整現(xiàn)有應(yīng)用程序的代碼,因此系統(tǒng)針對(duì)一些通過(guò)開(kāi)源的日志組件提供插件支持.系統(tǒng)默認(rèn)提供基于log4net的Appender,通過(guò)配置相應(yīng)的Appender在不調(diào)整應(yīng)用代碼的情況就可以把信息提供到系統(tǒng)中.
