本發(fā)明涉及服務(wù)器監(jiān)控領(lǐng)域,尤其涉及一種監(jiān)控系統(tǒng)及方法。
背景技術(shù):
近年,伴隨著應(yīng)用軟件系統(tǒng)體系膨脹,架構(gòu)的擴(kuò)展,軟件體系已經(jīng)越來(lái)越難以把控,軟件運(yùn)行過(guò)程中出現(xiàn)的問(wèn)題也越來(lái)越復(fù)雜,難以解決,而一些時(shí)延要求高的內(nèi)容,甚至?xí)驗(yàn)閿?shù)據(jù)的丟失造成不必要的經(jīng)濟(jì)損失,這就要提前監(jiān)控系統(tǒng),監(jiān)控系統(tǒng)的全流程,做到無(wú)縫監(jiān)控,并同時(shí)可以監(jiān)控多個(gè)系統(tǒng)。
目前的系統(tǒng)監(jiān)控多是用shell腳本的形式,去監(jiān)控系統(tǒng)運(yùn)行狀況的CPU、內(nèi)存、網(wǎng)絡(luò)、無(wú)效鏈接、運(yùn)行日志等,一般都是單臺(tái)設(shè)備監(jiān)控;或者是將系統(tǒng)的日志存入數(shù)據(jù)庫(kù)中,然后系統(tǒng)再對(duì)各個(gè)節(jié)點(diǎn)的日志進(jìn)行分析。這樣的方式比較簡(jiǎn)單,一般設(shè)備較少時(shí)采用,而且監(jiān)控的內(nèi)容也十分有限,而且監(jiān)控內(nèi)容一般不做更進(jìn)一步存儲(chǔ)、分析,對(duì)系統(tǒng)的進(jìn)一步建設(shè),指導(dǎo)意義有限。在新的項(xiàng)目做監(jiān)控的時(shí)候,還需要針對(duì)特例重新開(kāi)發(fā),無(wú)法通過(guò)配置,實(shí)現(xiàn)復(fù)用。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于,解決現(xiàn)有的服務(wù)器監(jiān)控技術(shù)領(lǐng)域中無(wú)法同時(shí)對(duì)多臺(tái)服務(wù)器進(jìn)行監(jiān)控,并且對(duì)新的項(xiàng)目做監(jiān)控時(shí)需要重新開(kāi)發(fā)監(jiān)控系統(tǒng)而無(wú)法實(shí)現(xiàn)復(fù)用的問(wèn)題,提供了一種監(jiān)控系統(tǒng)及方法。
為了實(shí)現(xiàn)上述目的,一方面,本發(fā)明提供了一種監(jiān)控系統(tǒng)。該監(jiān)控系統(tǒng)包括監(jiān)控裝置和一臺(tái)或多臺(tái)服務(wù)器;監(jiān)控裝置包括:接收模塊、存儲(chǔ)模塊和分析模塊;一臺(tái)或多臺(tái)服務(wù)器中的任一臺(tái)服務(wù)器包括數(shù)據(jù)搜集客戶端;接收模塊,用于接收由數(shù)據(jù)搜集客戶端收集的服務(wù)器日志數(shù)據(jù),日志數(shù)據(jù)包括服務(wù)器的運(yùn)行參數(shù)、中間運(yùn)行日志和應(yīng)用日志;存儲(chǔ)模塊,用于依據(jù)模型庫(kù)的配置確定日志數(shù)據(jù)的存儲(chǔ)方式,并根據(jù)存儲(chǔ)方式對(duì)日志數(shù)據(jù)進(jìn)行存儲(chǔ);分析模塊,用于根據(jù)日志數(shù)據(jù)的存儲(chǔ)方式從模型庫(kù)中選擇相應(yīng)類(lèi)型的模型,并根據(jù)相應(yīng)類(lèi)型的模型對(duì)存儲(chǔ)后的日志數(shù)據(jù)進(jìn)行分析;監(jiān)控者基于日志數(shù)據(jù)的分析結(jié)果進(jìn)行監(jiān)控。
優(yōu)選地,數(shù)據(jù)搜集客戶端采用單項(xiàng)傳輸機(jī)制將搜集的服務(wù)器日志數(shù)據(jù)傳輸給監(jiān)控裝置。
優(yōu)選地,存儲(chǔ)模塊具體用于:依據(jù)模型庫(kù)的配置確定日志數(shù)據(jù)的存儲(chǔ)方式為File類(lèi)型,并根據(jù)File類(lèi)型對(duì)日志數(shù)據(jù)進(jìn)行存儲(chǔ);和/或
依據(jù)模型庫(kù)的配置確定日志數(shù)據(jù)的存儲(chǔ)方式為Hdfs類(lèi)型,并根據(jù)Hdfs類(lèi)型對(duì)日志數(shù)據(jù)進(jìn)行存儲(chǔ);和/或
依據(jù)模型庫(kù)的配置確定日志數(shù)據(jù)的存儲(chǔ)方式為Redis類(lèi)型,并根據(jù)Redis類(lèi)型對(duì)日志數(shù)據(jù)進(jìn)行存儲(chǔ)。
優(yōu)選地,分析模塊具體用于:根據(jù)日志數(shù)據(jù)的存儲(chǔ)方式為File類(lèi)型從模型庫(kù)中選擇數(shù)據(jù)庫(kù)類(lèi)型的模型,并根據(jù)數(shù)據(jù)庫(kù)類(lèi)型的模型對(duì)存儲(chǔ)后的日志數(shù)據(jù)進(jìn)行分析;根據(jù)日志數(shù)據(jù)的存儲(chǔ)方式為Hdfs類(lèi)型從模型庫(kù)中選擇大數(shù)據(jù)類(lèi)型的模型,并根據(jù)大數(shù)據(jù)類(lèi)型的模型對(duì)存儲(chǔ)后的日志數(shù)據(jù)進(jìn)行分析;根據(jù)日志數(shù)據(jù)的存儲(chǔ)方式為Redis類(lèi)型從模型庫(kù)中選擇內(nèi)存計(jì)算類(lèi)型的模型,并根據(jù)內(nèi)存計(jì)算類(lèi)型的模型對(duì)存儲(chǔ)后的日志數(shù)據(jù)進(jìn)行分析;監(jiān)控者基于日志數(shù)據(jù)的分析結(jié)果進(jìn)行監(jiān)控。
優(yōu)選地,監(jiān)控裝置還包括預(yù)先建立的模型庫(kù)。
另一方面,本發(fā)明還提供了一種監(jiān)控方法。該方法包括步驟:接收由數(shù)據(jù)搜集客戶端搜集的服務(wù)器日志數(shù)據(jù),日志數(shù)據(jù)包括服務(wù)器的運(yùn)行參數(shù)、中間運(yùn)行日志和應(yīng)用日志;依據(jù)模型庫(kù)的配置確定日志數(shù)據(jù)的存儲(chǔ)方式,并根據(jù)存儲(chǔ)方式對(duì)日志數(shù)據(jù)進(jìn)行存儲(chǔ);根據(jù)日志數(shù)據(jù)的存儲(chǔ)方式從模型庫(kù)中選擇相應(yīng)類(lèi)型的模型,并根據(jù)相應(yīng)類(lèi)型的模型對(duì)存儲(chǔ)后的日志數(shù)據(jù)進(jìn)行分析;監(jiān)控者基于日志數(shù)據(jù)的分析結(jié)果進(jìn)行監(jiān)控。
優(yōu)選地,數(shù)據(jù)搜集客戶端采用單項(xiàng)傳輸機(jī)制對(duì)搜集的服務(wù)器日志數(shù)據(jù)進(jìn)行傳輸。
優(yōu)選地,依據(jù)模型庫(kù)的配置確定日志數(shù)據(jù)的存儲(chǔ)方式,并根據(jù)存儲(chǔ)方式對(duì)日志數(shù)據(jù)進(jìn)行存儲(chǔ)步驟具體包括:依據(jù)模型庫(kù)的配置確定日志數(shù)據(jù)的存儲(chǔ)方式為File類(lèi)型,并根據(jù)File類(lèi)型對(duì)日志數(shù)據(jù)進(jìn)行存儲(chǔ);和/或
依據(jù)模型庫(kù)的配置確定日志數(shù)據(jù)的存儲(chǔ)方式為Hdfs類(lèi)型,并根據(jù)Hdfs類(lèi)型對(duì)日志數(shù)據(jù)進(jìn)行存儲(chǔ);和/或
依據(jù)模型庫(kù)的配置確定日志數(shù)據(jù)的存儲(chǔ)方式為Redis類(lèi)型,并根據(jù)Redis類(lèi)型對(duì)日志數(shù)據(jù)進(jìn)行存儲(chǔ)。
優(yōu)選地,根據(jù)日志數(shù)據(jù)的存儲(chǔ)方式從模型庫(kù)中選擇相應(yīng)類(lèi)型的模型,并根據(jù)相應(yīng)類(lèi)型的模型對(duì)存儲(chǔ)后的日志數(shù)據(jù)進(jìn)行分析步驟具體包括:根據(jù)日志數(shù)據(jù)的存儲(chǔ)方式為File類(lèi)型從模型庫(kù)中選擇數(shù)據(jù)庫(kù)類(lèi)型的模型,并根據(jù)數(shù)據(jù)庫(kù)類(lèi)型的模型對(duì)存儲(chǔ)后的日志數(shù)據(jù)進(jìn)行分析;根據(jù)日志數(shù)據(jù)的存儲(chǔ)方式為Hdfs類(lèi)型從模型庫(kù)中選擇大數(shù)據(jù)類(lèi)型的模型,并根據(jù)大數(shù)據(jù)類(lèi)型的模型對(duì)存儲(chǔ)后的日志數(shù)據(jù)進(jìn)行分析;根據(jù)日志數(shù)據(jù)的存儲(chǔ)方式為Redis類(lèi)型從模型庫(kù)中選擇內(nèi)存計(jì)算類(lèi)型的模型,并根據(jù)內(nèi)存計(jì)算類(lèi)型的模型對(duì)存儲(chǔ)后的日志數(shù)據(jù)進(jìn)行分析。
優(yōu)選地,還包括預(yù)先建立模型庫(kù)。
本發(fā)明提供的一種監(jiān)控系統(tǒng)及方法,可以采集并處理多個(gè)服務(wù)器上的數(shù)據(jù),可以在新的項(xiàng)目上進(jìn)行復(fù)用,實(shí)現(xiàn)對(duì)多個(gè)服務(wù)器和多個(gè)項(xiàng)目進(jìn)行集中監(jiān)控。
附圖說(shuō)明
圖1為本發(fā)明實(shí)施例提供的一種監(jiān)控系統(tǒng)的結(jié)構(gòu)示意圖;
圖2為圖1中監(jiān)控裝置的結(jié)構(gòu)示意圖;
圖3為圖2中分析模塊采用的模型庫(kù)中各類(lèi)型的模型配置流程示意圖,包括圖3a、圖3b和圖3c:
圖3a為模型庫(kù)中數(shù)據(jù)庫(kù)類(lèi)型的模型配置流程示意圖,
圖3b為模型庫(kù)中大數(shù)據(jù)類(lèi)型的模型配置流程示意圖,
圖3c為模型庫(kù)中內(nèi)存計(jì)算類(lèi)型的模型配置流程示意圖;
圖4為本發(fā)明實(shí)施例提供的一種監(jiān)控方法的流程示意圖。
具體實(shí)施方式
下面結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明進(jìn)行詳細(xì)、清楚、完整的說(shuō)明。顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其它實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
圖1為本發(fā)明實(shí)施例提供的一種監(jiān)控系統(tǒng)的結(jié)構(gòu)示意圖。如圖1所示,該監(jiān)控系統(tǒng)包括監(jiān)控裝置100和服務(wù)器1,服務(wù)器2,…,服務(wù)器n(n為正整數(shù)),即一臺(tái)或多臺(tái)服務(wù)器。一臺(tái)或多臺(tái)服務(wù)器中的任一臺(tái)服務(wù)器都包括數(shù)據(jù)搜集客戶端。
圖2為圖1中監(jiān)控裝置的結(jié)構(gòu)示意圖。如圖2所示,該監(jiān)控裝置100包括:接收模塊101、存儲(chǔ)模塊102和分析模塊103。
接收模塊101用于接收由數(shù)據(jù)搜集客戶端收集的服務(wù)器日志數(shù)據(jù)。數(shù)據(jù)搜集客戶端收集的服務(wù)器日志數(shù)據(jù)包括服務(wù)器的運(yùn)行參數(shù)、中間運(yùn)行日志和應(yīng)用日志。其中,服務(wù)器運(yùn)行參數(shù)包括CPU、內(nèi)存和網(wǎng)絡(luò)參數(shù)以及無(wú)效鏈接等;中間運(yùn)行日志包括中間件中各容器參數(shù),堆棧參數(shù)、數(shù)據(jù)庫(kù)連接參數(shù)等;應(yīng)用日志包括各種操作執(zhí)行的成功、失敗情況,或者用戶注冊(cè)、登錄及其他情況的異常。數(shù)據(jù)搜集客戶端對(duì)服務(wù)器數(shù)據(jù)可以根據(jù)模型庫(kù)的配置,只搜集經(jīng)存儲(chǔ)后可以輸入模型庫(kù)中的模型進(jìn)行分析的數(shù)據(jù),以減少資源的占用,避免影響服務(wù)器的性能。并采用單項(xiàng)傳輸機(jī)制將搜集的服務(wù)器日志數(shù)據(jù)傳輸給監(jiān)控裝置,因單項(xiàng)傳輸無(wú)需進(jìn)行心跳檢測(cè),從而可以減少對(duì)網(wǎng)絡(luò)的占用。
例如,在每臺(tái)服務(wù)器上安裝的數(shù)據(jù)搜集客戶端為Scribe客戶端。Scribe客戶端可以對(duì)任意數(shù)量的服務(wù)器的日志數(shù)據(jù)進(jìn)行分布式搜集,當(dāng)需要搜集對(duì)新的服務(wù)器的日志數(shù)據(jù)時(shí),通過(guò)安裝Scribe客戶端即可進(jìn)行擴(kuò)展。而且通過(guò)Scribe客戶端進(jìn)行傳輸可以實(shí)現(xiàn)高容錯(cuò),當(dāng)存儲(chǔ)模塊的網(wǎng)絡(luò)或者機(jī)器出現(xiàn)故障時(shí),Scribe客戶端會(huì)將日志轉(zhuǎn)存到本地或者另一個(gè)位置,當(dāng)Scribe服務(wù)器恢復(fù)后,Scribe客戶端會(huì)將轉(zhuǎn)存的日志重新傳輸給存儲(chǔ)模塊。此外,Scribe客戶端對(duì)服務(wù)器日志數(shù)據(jù)的搜集不是采用抓取方式,而是采用Push方式,對(duì)CPU的占用極低。
存儲(chǔ)模塊102用于依據(jù)模型庫(kù)的配置確定日志數(shù)據(jù)的存儲(chǔ)方式,并根據(jù)存儲(chǔ)方式對(duì)日志數(shù)據(jù)進(jìn)行存儲(chǔ)。
依據(jù)模型庫(kù)的配置確定日志數(shù)據(jù)的存儲(chǔ)方式為File類(lèi)型,并根據(jù)File類(lèi)型對(duì)日志數(shù)據(jù)進(jìn)行存儲(chǔ),以將其加載至各種數(shù)據(jù)倉(cāng)庫(kù)中,進(jìn)行數(shù)據(jù)匯聚。依據(jù)模型庫(kù)的配置確定日志數(shù)據(jù)的存儲(chǔ)方式為Hdfs類(lèi)型,并根據(jù)Hdfs類(lèi)型對(duì)日志數(shù)據(jù)進(jìn)行存儲(chǔ),以將其導(dǎo)入大數(shù)據(jù)平臺(tái),并采用大數(shù)據(jù)處理的方式對(duì)數(shù)據(jù)進(jìn)行離線處理或者實(shí)時(shí)處理。依據(jù)模型庫(kù)的配置確定日志數(shù)據(jù)的存儲(chǔ)方式為Redis類(lèi)型,并根據(jù)Redis類(lèi)型對(duì)日志數(shù)據(jù)進(jìn)行存儲(chǔ),在數(shù)據(jù)量較小時(shí),直接把日志數(shù)據(jù)加載至Rddis服務(wù)器,以便于其它程序進(jìn)行訪問(wèn)和進(jìn)行內(nèi)存計(jì)算。
該監(jiān)控系統(tǒng)還包括預(yù)先建立的模型庫(kù)。圖3為圖2中分析模塊采用的模型庫(kù)中各類(lèi)型的模型配置流程示意圖。如圖3a所示,數(shù)據(jù)庫(kù)類(lèi)型模型的配置包括步驟201-203:
步驟201,從ORACLE、MYSQL等多種類(lèi)型的數(shù)據(jù)庫(kù)中,導(dǎo)入數(shù)據(jù)庫(kù)數(shù)據(jù)源、數(shù)據(jù)處理分層結(jié)構(gòu)、各層處理過(guò)程和結(jié)果存儲(chǔ)位置等。數(shù)據(jù)分層后各層的數(shù)據(jù)結(jié)果可作為下一層數(shù)據(jù)處理的數(shù)據(jù)源頭,處理的結(jié)果將被保存于結(jié)果存儲(chǔ)位置中的指定位置。通過(guò)基于原子操作的基礎(chǔ)設(shè)置可以將數(shù)據(jù)庫(kù)類(lèi)型模型的算法解析成不同的可執(zhí)行SQL,對(duì)模型而言具體的數(shù)據(jù)庫(kù)類(lèi)型不影響分析結(jié)果。
步驟202,校驗(yàn)步驟201中的數(shù)據(jù)庫(kù)類(lèi)型模型的配置是否符合規(guī)范,以用于進(jìn)一步的觸發(fā)執(zhí)行,如果不符合規(guī)范,則繼續(xù)配置。
步驟203,為配置符合規(guī)范的數(shù)據(jù)庫(kù)類(lèi)型模型配置觸發(fā)條件,即指某一個(gè)時(shí)間點(diǎn)對(duì)庫(kù)中數(shù)據(jù)進(jìn)行處理,將處理后的數(shù)據(jù)達(dá)到閾值的數(shù)據(jù)進(jìn)行輸出。并打開(kāi)執(zhí)行開(kāi)關(guān)。
如圖3b所示,大數(shù)據(jù)類(lèi)型模型的配置包括步驟301-303:
步驟301,導(dǎo)入Hdfs數(shù)據(jù)源,即采用Hdfs方式存儲(chǔ)的日志數(shù)據(jù);導(dǎo)入預(yù)先準(zhǔn)備的數(shù)據(jù)處理腳本或者java多線程運(yùn)行程序,以及結(jié)果存儲(chǔ)位置等,可以實(shí)現(xiàn)離線處理或者在線實(shí)時(shí)處理。其中,處理腳本和java多線程運(yùn)行程序均可以運(yùn)行在Hadoop、Strom等數(shù)據(jù)平臺(tái),并且java多線程運(yùn)行程序相較于處理腳本,在借助數(shù)據(jù)平臺(tái)進(jìn)行大規(guī)模的數(shù)據(jù)處理具有更高的擴(kuò)展性,處理的結(jié)果將被保存于結(jié)果存儲(chǔ)位置中的指定位置。
步驟302,校驗(yàn)步驟301中的大數(shù)據(jù)類(lèi)型模型的配置是否符合規(guī)范,以用于進(jìn)一步的觸發(fā)執(zhí)行,如果不符合規(guī)范,則繼續(xù)配置。
步驟303,為配置符合規(guī)范的大數(shù)據(jù)類(lèi)型模型配置觸發(fā)條件,即對(duì)大數(shù)據(jù)平臺(tái)中數(shù)據(jù)按照shell腳本或者java程序進(jìn)行實(shí)時(shí)或者定時(shí)處理后,進(jìn)行輸出。并打開(kāi)執(zhí)行開(kāi)關(guān)。
如圖3c所示,內(nèi)存計(jì)算類(lèi)型模型的配置包括步驟401-403:
步驟401,導(dǎo)入集群數(shù)據(jù)接口,導(dǎo)入數(shù)據(jù)處理java代碼和結(jié)果存儲(chǔ)位置等。java平臺(tái)在軟件開(kāi)發(fā)中具有高擴(kuò)展性,利用java代碼可以靈活的對(duì)Redis集群中的數(shù)據(jù)進(jìn)行處理,處理的結(jié)果將被保存于結(jié)果存儲(chǔ)位置中的指定位置。
步驟402,校驗(yàn)步驟401中的內(nèi)存計(jì)算類(lèi)型模型的配置是否符合規(guī)范,以用于進(jìn)一步的觸發(fā)執(zhí)行,如果不符合規(guī)范,則繼續(xù)配置。
步驟403,為配置符合規(guī)范的內(nèi)存計(jì)算類(lèi)型模型配置觸發(fā)條件,即處理后的數(shù)據(jù)達(dá)到對(duì)應(yīng)閾值的數(shù)據(jù),進(jìn)行輸出。并打開(kāi)執(zhí)行開(kāi)關(guān)。
用戶可以根據(jù)需要采用同一種存儲(chǔ)方式對(duì)所有日志數(shù)據(jù)進(jìn)行存儲(chǔ),也可以采用多種存儲(chǔ)方式對(duì)相同的日志數(shù)據(jù)進(jìn)行存儲(chǔ)。不同的分析模型可以得到不同導(dǎo)向的分析結(jié)果,包括運(yùn)行綜合指數(shù)、服務(wù)器運(yùn)行平穩(wěn)度、項(xiàng)目?jī)?yōu)化導(dǎo)向等。運(yùn)行綜合指數(shù)是通過(guò)數(shù)據(jù)分析后得到的系統(tǒng)運(yùn)行的指標(biāo)的綜合指數(shù),運(yùn)行平穩(wěn)度是指根據(jù)歷史數(shù)據(jù),獲取當(dāng)前指標(biāo)的方差,從而反映運(yùn)行平穩(wěn)度。優(yōu)化向?qū)歉鶕?jù)歷史數(shù)據(jù)和當(dāng)前綜合指數(shù)生成,比如單位時(shí)間里,應(yīng)該優(yōu)化的指標(biāo)。基于同一日志數(shù)據(jù)的不同導(dǎo)向的分析結(jié)果,還可以進(jìn)一步分析出各個(gè)導(dǎo)向分析結(jié)果之間的關(guān)聯(lián)關(guān)系。
分析模塊103用于根據(jù)日志數(shù)據(jù)的存儲(chǔ)方式從模型庫(kù)中選擇相應(yīng)類(lèi)型的模型,并根據(jù)相應(yīng)類(lèi)型的模型對(duì)存儲(chǔ)后的日志數(shù)據(jù)進(jìn)行分析;監(jiān)控者基于日志數(shù)據(jù)的分析結(jié)果進(jìn)行監(jiān)控。
具體地,根據(jù)日志數(shù)據(jù)的存儲(chǔ)方式為File類(lèi)型從模型庫(kù)中選擇數(shù)據(jù)庫(kù)類(lèi)型的模型,并根據(jù)數(shù)據(jù)庫(kù)類(lèi)型的模型對(duì)存儲(chǔ)后的日志數(shù)據(jù)進(jìn)行分析;根據(jù)日志數(shù)據(jù)的存儲(chǔ)方式為Hdfs類(lèi)型從模型庫(kù)中選擇大數(shù)據(jù)類(lèi)型的模型,并根據(jù)大數(shù)據(jù)類(lèi)型的模型對(duì)存儲(chǔ)后的日志數(shù)據(jù)進(jìn)行分析;根據(jù)日志數(shù)據(jù)的存儲(chǔ)方式為Redis類(lèi)型從模型庫(kù)中選擇內(nèi)存計(jì)算類(lèi)型的模型,并根據(jù)內(nèi)存計(jì)算類(lèi)型的模型對(duì)存儲(chǔ)后的日志數(shù)據(jù)進(jìn)行分析;監(jiān)控者基于日志數(shù)據(jù)的分析結(jié)果進(jìn)行監(jiān)控。
例如,根據(jù)日志數(shù)據(jù)的存儲(chǔ)方式為File類(lèi)型從模型庫(kù)中選擇并觸發(fā)數(shù)據(jù)庫(kù)類(lèi)型的模型,將File類(lèi)型的日志數(shù)據(jù)輸入數(shù)據(jù)庫(kù)類(lèi)型的模型中以得到分析結(jié)果。根據(jù)日志數(shù)據(jù)的存儲(chǔ)方式為Hdfs類(lèi)型從模型庫(kù)中選擇并觸發(fā)大數(shù)據(jù)類(lèi)型的模型,將Hdfs類(lèi)型的日志數(shù)據(jù)輸入大數(shù)據(jù)類(lèi)型的模型中以得到分析結(jié)果。根據(jù)日志數(shù)據(jù)的存儲(chǔ)方式為Redis類(lèi)型從模型庫(kù)中選擇并觸發(fā)內(nèi)存計(jì)算類(lèi)型的模型,將Redis類(lèi)型的日志數(shù)據(jù)輸入內(nèi)存計(jì)算類(lèi)型的模型中以得到分析結(jié)果。監(jiān)控者基于日志數(shù)據(jù)的分析結(jié)果進(jìn)行監(jiān)控。
監(jiān)控裝置還可以包括推送模塊,推送模塊用于將分析結(jié)果制作成報(bào)表并設(shè)定優(yōu)先級(jí),根據(jù)優(yōu)先級(jí)將報(bào)表形式的分析結(jié)果以短信或者郵件的方式推送給監(jiān)控者,以便于監(jiān)控者根據(jù)分析結(jié)果進(jìn)行監(jiān)控,也可以將分析結(jié)果保存在預(yù)置數(shù)據(jù)庫(kù)中,以便于監(jiān)控者根據(jù)權(quán)限隨時(shí)取用。
本發(fā)明實(shí)施例提供的一種監(jiān)控系統(tǒng),可以采集并處理多個(gè)服務(wù)器上的數(shù)據(jù),可以在新的項(xiàng)目上進(jìn)行復(fù)用,實(shí)現(xiàn)對(duì)多個(gè)服務(wù)器和多個(gè)項(xiàng)目進(jìn)行集中監(jiān)控。
圖4為本發(fā)明實(shí)施例提供的一種監(jiān)控方法的流程示意圖。如圖4所示,該方法包括步驟501-503:
步驟501,接收由數(shù)據(jù)搜集客戶端搜集的服務(wù)器日志數(shù)據(jù),日志數(shù)據(jù)包括服務(wù)器的運(yùn)行參數(shù)、中間運(yùn)行日志和應(yīng)用日志。
其中,數(shù)據(jù)搜集客戶端可以采用單項(xiàng)傳輸機(jī)制對(duì)搜集的服務(wù)器日志數(shù)據(jù)進(jìn)行傳輸,數(shù)據(jù)搜集客戶端可以為Scribe客戶端。
步驟502,依據(jù)模型庫(kù)的配置確定日志數(shù)據(jù)的存儲(chǔ)方式,并根據(jù)存儲(chǔ)方式對(duì)日志數(shù)據(jù)進(jìn)行存儲(chǔ);
具體地,依據(jù)模型庫(kù)的配置確定日志數(shù)據(jù)的存儲(chǔ)方式為File類(lèi)型,并根據(jù)File類(lèi)型對(duì)日志數(shù)據(jù)進(jìn)行存儲(chǔ);和/或依據(jù)模型庫(kù)的配置確定日志數(shù)據(jù)的存儲(chǔ)方式為Hdfs類(lèi)型,并根據(jù)Hdfs類(lèi)型對(duì)日志數(shù)據(jù)進(jìn)行存儲(chǔ);和/或依據(jù)模型庫(kù)的配置確定日志數(shù)據(jù)的存儲(chǔ)方式為Redis類(lèi)型,并根據(jù)Redis類(lèi)型對(duì)日志數(shù)據(jù)進(jìn)行存儲(chǔ)。
步驟503,根據(jù)日志數(shù)據(jù)的存儲(chǔ)方式從模型庫(kù)中選擇相應(yīng)類(lèi)型的模型,并根據(jù)相應(yīng)類(lèi)型的模型對(duì)存儲(chǔ)后的日志數(shù)據(jù)進(jìn)行分析;監(jiān)控者基于日志數(shù)據(jù)的分析結(jié)果進(jìn)行監(jiān)控。
具體地,根據(jù)日志數(shù)據(jù)的存儲(chǔ)方式為File類(lèi)型從模型庫(kù)中選擇數(shù)據(jù)庫(kù)類(lèi)型的模型,并根據(jù)數(shù)據(jù)庫(kù)類(lèi)型的模型對(duì)存儲(chǔ)后的日志數(shù)據(jù)進(jìn)行分析。根據(jù)日志數(shù)據(jù)的存儲(chǔ)方式為Hdfs類(lèi)型從模型庫(kù)中選擇大數(shù)據(jù)類(lèi)型的模型,并根據(jù)大數(shù)據(jù)類(lèi)型的模型對(duì)存儲(chǔ)后的日志數(shù)據(jù)進(jìn)行分析。根據(jù)日志數(shù)據(jù)的存儲(chǔ)方式為Redis類(lèi)型從模型庫(kù)中選擇內(nèi)存計(jì)算類(lèi)型的模型,并根據(jù)內(nèi)存計(jì)算類(lèi)型的模型對(duì)存儲(chǔ)后的日志數(shù)據(jù)進(jìn)行分析。
本發(fā)明實(shí)施例中的方法與前述系統(tǒng)相對(duì)應(yīng),在此不進(jìn)行贅述。
本發(fā)明實(shí)施例提供的一種監(jiān)控方法,可以采集并處理多個(gè)服務(wù)器上的數(shù)據(jù),可以在新的項(xiàng)目上進(jìn)行復(fù)用,實(shí)現(xiàn)對(duì)多個(gè)服務(wù)器和多個(gè)項(xiàng)目進(jìn)行集中監(jiān)控。
以上的具體實(shí)施方式,對(duì)本發(fā)明的目的、技術(shù)方案和有益效果進(jìn)行了進(jìn)一步詳細(xì)說(shuō)明,所應(yīng)理解的是,以上僅為本發(fā)明的具體實(shí)施方式而已,并不用于限定本發(fā)明的保護(hù)范圍,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。