用于處理需要報警的數(shù)據的處理器和方法
【專利說明】用于處理需要報警的數(shù)據的處理器和方法
[0001]本申請為申請日是2012年11月14日,申請?zhí)柺?01210459207.6,名稱是“用于處理需要報警的數(shù)據的處理器和方法”的發(fā)明專利申請的分案申請。
技術領域
[0002]本發(fā)明涉及計算機技術領域,具體涉及一種用于處理需要報警的數(shù)據的處理器和方法。
【背景技術】
[0003]隨著網絡的快速發(fā)展,出現(xiàn)了需要為大量用戶服務的網絡系統(tǒng)。這些網絡系統(tǒng)具有分布在各個地址的大量服務器,而這些服務器通常構建為集群的方式來為用戶服務。隨著提供服務的服務器越來越多,對這些服務器的性能進行監(jiān)控并在出現(xiàn)故障時及時、準確地進行報警成為目前非常關注的問題。
[0004]當監(jiān)控系統(tǒng)用于監(jiān)控大規(guī)模服務器時,會產生大量的監(jiān)控數(shù)據。隨著監(jiān)控數(shù)據越來越多,如何對監(jiān)控數(shù)據進行提取、分析、有效管理以便快速向操作人員及時、準確地報警成為考量包含大規(guī)模服務器的網絡系統(tǒng)的快速反應、修復能力,直接影響著網絡系統(tǒng)的服務質量。
【發(fā)明內容】
[0005]鑒于上述問題,提出了本發(fā)明以便提供一種克服上述問題或者至少部分地解決上述問題的用于處理需要報警的數(shù)據的處理器和方法。
[0006]依據本發(fā)明的一個方面,提供了用于處理需要報警的數(shù)據的處理器,其包括:數(shù)據表構造模塊,適于根據需要報警的數(shù)據來構造報警數(shù)據表,所述需要報警的數(shù)據包括至少兩個數(shù)據項,所述報警數(shù)據表包括多個數(shù)據節(jié)點,每個數(shù)據節(jié)點上鏈接有環(huán)形雙向鏈表,所述環(huán)形雙向鏈表包括多個鏈表節(jié)點,其中數(shù)據節(jié)點由需要報警的數(shù)據中選定的至少一個數(shù)據項進行標識,該至少一個數(shù)據項相同的需要報警的數(shù)據被存儲在同一個數(shù)據節(jié)點下并按順序存儲在該數(shù)據節(jié)點的環(huán)形雙向鏈表中相應的鏈表節(jié)點;報警模塊,根據預定的報警策略來確定與數(shù)據節(jié)點相關聯(lián)的環(huán)形雙向鏈表中的需要報警的數(shù)據是否符合所述報警策略,當確定符合報警策略時進行報警;以及報警歷史存儲器,其存儲報警結果的歷史記錄。
[0007]根據本發(fā)明的另一方面,提供了一種用于處理需要報警的數(shù)據的方法,其包括:根據需要報警的數(shù)據來構造報警數(shù)據表,所述需要報警的數(shù)據包括至少兩個數(shù)據項,所述報警數(shù)據表包括多個數(shù)據節(jié)點,每個數(shù)據節(jié)點上鏈接有環(huán)形雙向鏈表,所述環(huán)形雙向鏈表包括多個鏈表節(jié)點,其中每個數(shù)據節(jié)點由需要報警的數(shù)據中選定的至少一個數(shù)據項進行標識,該至少一個數(shù)據項相同的需要報警的數(shù)據被存儲在同一個數(shù)據節(jié)點下并按順序存儲在該數(shù)據節(jié)點的環(huán)形雙向鏈表中相應的鏈表節(jié)點;根據預定的報警策略來確定與數(shù)據節(jié)點相關聯(lián)的環(huán)形雙向鏈表中的需要報警的數(shù)據是否符合所述報警策略,當確定滿足報警策略時進行報警;將報警結果的歷史記錄存儲在報警歷史存儲器中。
[0008]本發(fā)明的用于處理需要報警的數(shù)據的處理器和方法可以應用于監(jiān)控系統(tǒng)中,尤其監(jiān)控多臺甚至上千、上萬臺機器的監(jiān)控系統(tǒng)中,便于對需要報警的數(shù)據進行分類、統(tǒng)計,并進行報警。使得操作人員能夠快速、準確地定位出現(xiàn)異常的機器。
[0009]上述說明僅是本發(fā)明技術方案的概述,為了能夠更清楚了解本發(fā)明的技術手段,而可依照說明書的內容予以實施,并且為了讓本發(fā)明的上述和其它目的、特征和優(yōu)點能夠更明顯易懂,以下特舉本發(fā)明的【具體實施方式】。
【附圖說明】
[0010]通過閱讀下文優(yōu)選實施方式的詳細描述,各種其他的優(yōu)點和益處對于本領域普通技術人員將變得清楚明了。附圖僅用于示出優(yōu)選實施方式的目的,而并不認為是對本發(fā)明的限制。而且在整個附圖中,用相同的參考符號表示相同的部件。在附圖中:
[0011]圖1示出了根據本發(fā)明的一實施例的用于處理需要報警的數(shù)據的處理器的框圖;
[0012]圖2示出了根據本發(fā)明一個實施例的報警數(shù)據表的示意圖;以及
[0013]圖3示出了根據本發(fā)明一個實施例的用于處理需要報警的數(shù)據的方法的流程圖。
【具體實施方式】
[0014]下面將參照附圖更詳細地描述本公開的示例性實施例。雖然附圖中顯示了本公開的示例性實施例,然而應當理解,可以以各種形式實現(xiàn)本公開而不應被這里闡述的實施例所限制。相反,提供這些實施例是為了能夠更透徹地理解本公開,并且能夠將本公開的范圍完整的傳達給本領域的技術人員。
[0015]本發(fā)明提供一種報警處理器,其可以用于監(jiān)控多臺服務器的監(jiān)控系統(tǒng),在監(jiān)控系統(tǒng)監(jiān)測到多臺服務器的大量的異常運行數(shù)據后,報警處理器對這些大量的異常運行數(shù)據有效地進行處理,從而及時、準確地進行報警。
[0016]圖1示出了根據本發(fā)明的一實施例的用于處理需要報警的數(shù)據的處理器100的框圖。如圖1所示,報警處理器100包括數(shù)據表構造模塊110和報警模塊120。
[0017]數(shù)據表構造模塊110適于根據需要報警的數(shù)據來構造報警數(shù)據表。這里,需要報警的數(shù)據例如可以是被監(jiān)控的機器的異常運行數(shù)據。該異常運行數(shù)據包括至少兩個數(shù)據項,例如可以包括:機器域名、報警策略ID、監(jiān)控數(shù)據項ID、故障值、和時間戳。其中機器域名是被監(jiān)控是否存在異常的機器的域名;報警策略ID是采取的對應的預定的報警策略;監(jiān)控數(shù)據項ID是對應于被監(jiān)控機器的一項運行指標;故障值是監(jiān)測到的機器的監(jiān)控數(shù)據項的異常數(shù)據;時間戳是監(jiān)測到機器的監(jiān)控數(shù)據項的異常數(shù)據的時間。想特別說明的是,該異常運行數(shù)據不限于上面所舉例子,其可以是上述例子中所列數(shù)據項的兩個或多個或全部,也可以是其它數(shù)據項。
[0018]數(shù)據表構造模塊110所構造的報警數(shù)據表如圖2所示。圖2中的報警數(shù)據表200是以需要報警的數(shù)據包括機器域名、報警策略ID、監(jiān)控數(shù)據項ID、故障值、和時間戳這五個數(shù)據項為例進行的圖示說明。從圖2中可以看出,報警數(shù)據表200包括多個數(shù)據節(jié)點210,這里只示意性地示出了 3個數(shù)據節(jié)點210。每個數(shù)據節(jié)點210鏈接有一環(huán)形雙向鏈表220,環(huán)形雙向鏈表220包括多個鏈表節(jié)點2220— 2205。圖2中為了圖示清楚起見,將環(huán)形雙向鏈表220畫在報警數(shù)據表200之外,實際上,環(huán)形雙向鏈表220與報警數(shù)據表200緊密關聯(lián)。在報警數(shù)據表200中,每個數(shù)據節(jié)點210由需要報警的運行數(shù)據中的機器域名和報警策略ID來標識,與每個數(shù)據節(jié)點210相關聯(lián)的環(huán)形雙向鏈表220的每個鏈表節(jié)點中存儲有具有相同機器域名和相同報警策略ID的需要報警的運行數(shù)據,多個鏈表節(jié)點根據其上的需要報警的運行數(shù)據的時間戳的值的大小在環(huán)形雙向鏈表220中依次鏈接排列。
[0019]想特別說明的是,根據圖2所示的報警數(shù)據表200,在大量的需要報警的數(shù)據中,即使機器域名相同,但是報警策略ID不同,也會形成不同的數(shù)據節(jié)點210,S卩,同一服務器因為報警策略ID不同而會有不同的數(shù)據節(jié)點210。另一方面,即使報警策略ID相同,但是機器域名不同,也會形成不同的數(shù)據節(jié)點210。只有機器域名和報警策略ID都相同的數(shù)據才位于一個數(shù)據節(jié)點210,并分布在與該數(shù)據節(jié)點210對應的一有序的環(huán)形雙向鏈表220中的各個對應的鏈表節(jié)點上。每當一個數(shù)據進入報警數(shù)據表200中,該數(shù)據就被分配到相應的數(shù)據節(jié)點210,并把該數(shù)據掛載到環(huán)形雙向鏈表220中與該數(shù)據中的時間戳相對應的鏈表節(jié)點處。利用圖2所示的報警數(shù)據表200,可以在存在大量需要報警的數(shù)據的情形下,將每個機器的不同類型的報警內容區(qū)別開,從而可以準確定位大量被監(jiān)控的機器中哪個機器出現(xiàn)了問題,以及出現(xiàn)了什么問題。
[0020]在圖2的環(huán)形雙向鏈表220中,可以設定某一點為標準時間戳的鏈表節(jié)點,然后將各數(shù)據按時間戳的值從小到大或從大到小自標準時間戳的鏈表節(jié)點按順時針或逆時針方向進行排列。例如,如圖2所示,在環(huán)形雙向鏈表220中,2200為標準時間戳的鏈表節(jié)點,按順時針方向時間戳的值逐漸增大,從鏈表節(jié)點2200開始逆時針方向與其最鄰近的鏈表節(jié)點2205為時間戳的值最大的鏈表節(jié)點;而從鏈表節(jié)點2200開始順時針方向與其最鄰近的鏈表節(jié)點2201為時間戳的值最小的鏈表節(jié)點。2202、2203、2204為時間戳的值大于2201的時間戳的值而小于2205的時間戳的值的、且時間戳的值依次增大的三個數(shù)據。圖2中只以環(huán)形雙向鏈表220中包含5個數(shù)據為例,在實際中環(huán)形雙向鏈表220中可