監(jiān)控服務器的方法和系統(tǒng)的制作方法
【技術領域】
[0001]本發(fā)明涉及計算機技術領域,特別地涉及一種監(jiān)控服務器的方法和系統(tǒng)。
【背景技術】
[0002]在運維管理中服務器性能管理是一項很重要的基礎工作。通常地,總監(jiān)控服務器采集多個被監(jiān)控服務器的CPU、內(nèi)存、操作系統(tǒng)指標及特定系統(tǒng)軟件的指標參數(shù)和應用日志等信息,然后保存在監(jiān)控信息數(shù)據(jù)庫中供用戶參考使用。
[0003]現(xiàn)有技術中,通常從數(shù)據(jù)庫中篩選出符合條件的全部時間內(nèi)的查詢數(shù)據(jù)是以json格式或者XML格式的文件發(fā)送給展示監(jiān)控數(shù)據(jù)PC機,然后展示給用戶的,具有數(shù)據(jù)量較大、展示效果差等缺點。
【發(fā)明內(nèi)容】
[0004]有鑒于此,本發(fā)明提供一種監(jiān)控服務器的方法和系統(tǒng),能夠減少數(shù)據(jù)傳輸量,優(yōu)化展示效果。
[0005]為實現(xiàn)上述目的,根據(jù)本發(fā)明的一個方面,提供了一種監(jiān)控服務器的方法。
[0006]本發(fā)明的監(jiān)控服務器的方法包括:展示監(jiān)控數(shù)據(jù)PC機將查詢條件發(fā)送給監(jiān)控系統(tǒng)web服務器;所述監(jiān)控系統(tǒng)web服務器將所述查詢條件轉化為結構化查詢語言然后發(fā)送給監(jiān)控信息數(shù)據(jù)庫;所述監(jiān)控信息數(shù)據(jù)庫根據(jù)所述結構化查詢語言篩選出符合條件的監(jiān)控數(shù)據(jù)全集合,然后將所述監(jiān)控數(shù)據(jù)全集合按時間倒序排列,選取預設數(shù)量的時間最新的監(jiān)控數(shù)據(jù)作為單層線性表形式的結果集發(fā)送給所述監(jiān)控系統(tǒng)web服務器,其中所述結果集的排序依據(jù)為時間戳;所述監(jiān)控系統(tǒng)web服務器將所述結果集轉換為CSV文件,然后發(fā)送給所述展示監(jiān)控數(shù)據(jù)PC機;所述展示監(jiān)控數(shù)據(jù)PC機將所述CSV文件轉換為二維圖表然后在人機界面上輸出所述二維圖表。
[0007]可選地,所述監(jiān)控系統(tǒng)web服務器將所述結果集轉為CSV文件的步驟包括:所述監(jiān)控系統(tǒng)web服務器將所述結果集轉為雙層線性表形式的處理結果集,所述處理結果集的主級排序依據(jù)為時間戳,所述處理結果集的次級排序依據(jù)為服務器標識;所述監(jiān)控系統(tǒng)web服務器將所述處理結果集按時間順序轉換為CSV文件,所述CSV文件的首行為服務器信息,其他行表示對應同一時間戳的數(shù)據(jù),列表示對應同一服務器的數(shù)據(jù)。
[0008]可選地,在實時查詢的情況下,所述查詢條件包括:需查詢的服務器類型、應用標識以及監(jiān)控維度標識。
[0009]可選地,在歷史查詢的情況下,所述查詢條件包括:需查詢的服務器類型、應用標識、監(jiān)控維度標識、歷史時間范圍和采樣頻率。
[0010]根據(jù)本發(fā)明的另一方面,提供了一種監(jiān)控服務器的系統(tǒng)。
[0011]本發(fā)明的監(jiān)控服務器的系統(tǒng)包括:展示監(jiān)控數(shù)據(jù)PC機、監(jiān)控系統(tǒng)web服務器和監(jiān)控信息數(shù)據(jù)庫,所述展示監(jiān)控數(shù)據(jù)PC機用于將查詢條件發(fā)送給所述監(jiān)控系統(tǒng)web服務器,還用于將CSV文件轉換為二維圖表然后在人機界面上輸出所述二維圖表;所述監(jiān)控系統(tǒng)web服務器用于將所述查詢條件轉化為結構化查詢語言然后發(fā)送給所述監(jiān)控信息數(shù)據(jù)庫,還用于將結果集轉換為所述CSV文件然后發(fā)送給所述展示監(jiān)控數(shù)據(jù)PC機;所述監(jiān)控信息數(shù)據(jù)庫用于根據(jù)所述結構化查詢語言篩選出符合條件的監(jiān)控數(shù)據(jù)全集合,然后將所述監(jiān)控數(shù)據(jù)全集合按時間倒序排列,選取預設數(shù)量的時間最新的監(jiān)控數(shù)據(jù)作為單層線性表形式的所述結果集發(fā)送給所述監(jiān)控系統(tǒng)web服務器,其中所述結果集的排序依據(jù)為時間戳。
[0012]可選地,所述監(jiān)控系統(tǒng)web服務器還用于:將所述結果集轉為雙層線性表形式的處理結果集,所述處理結果集的主級排序依據(jù)為時間戳,所述處理結果集的次級排序依據(jù)為服務器標識;將所述處理結果集按時間順序轉換為CSV文件,所述CSV文件的首行為服務器信息,其他行表示對應同一時間戳的數(shù)據(jù),各列表示對應同一服務器的數(shù)據(jù)。
[0013]可選地,在實時查詢的情況下,所述查詢條件包括:需查詢的服務器類型、應用標識以及監(jiān)控維度標識。
[0014]可選地,在歷史查詢的情況下,所述查詢條件包括:需查詢的服務器類型、應用標識、監(jiān)控維度標識、歷史時間范圍和采樣頻率。
[0015]根據(jù)本發(fā)明的技術方案,一方面通過設置僅僅返回時間最新的預設數(shù)量的符合條件數(shù)據(jù)而非返回全部數(shù)據(jù),可以減少數(shù)據(jù)傳輸量,另一方面監(jiān)控系統(tǒng)web服務器向展示監(jiān)控數(shù)據(jù)PC機發(fā)送的文件采用數(shù)據(jù)緊湊的CSV格式,與傳統(tǒng)的json格式或XML格式相比,也進一步減少了數(shù)據(jù)傳輸量。此外,本發(fā)明中采用CSV格式,易于轉化成二維圖表展示給用戶,優(yōu)化了用戶體驗。
【附圖說明】
[0016]附圖用于更好地理解本發(fā)明,不構成對本發(fā)明的不當限定。其中:
[0017]圖1是根據(jù)本發(fā)明實施例的監(jiān)控服務器的方法的基本步驟的示意圖;
[0018]圖2是根據(jù)本發(fā)明實施例的監(jiān)控服務器的系統(tǒng)的主要部件的示意圖。
【具體實施方式】
[0019]以下結合附圖對本發(fā)明的示范性實施例做出說明,其中包括本發(fā)明實施例的各種細節(jié)以助于理解,應當將它們認為僅僅是示范性的。因此,本領域普通技術人員應當認識至IJ,可以對這里描述的實施例做出各種改變和修改,而不會背離本發(fā)明的范圍和精神。同樣,為了清楚和簡明,以下的描述中省略了對公知功能和結構的描述。
[0020]圖1是根據(jù)本發(fā)明實施例的監(jiān)控服務器的方法的基本步驟的示意圖。如圖1所示,該方法主要包括如下的步驟SI至步驟S5。
[0021]步驟S1:展示監(jiān)控數(shù)據(jù)PC機將查詢條件發(fā)送給監(jiān)控系統(tǒng)web服務器。
[0022]需要說明的是,查詢條件可以是用戶直接輸入給展示監(jiān)控數(shù)據(jù)PC機的,也可以是用戶在其他設備上輸入后間接傳送到展示監(jiān)控數(shù)據(jù)PC機上的,本案中不做限定。
[0023]在實時查詢的情況下,查詢條件可以包括:需查詢的服務器類型、應用標識以及監(jiān)控維度標識。例如:用戶可以實時服務器ID為偶數(shù)的所有服務器上的IE瀏覽器應用軟件的當前實時的CPU占用率。
[0024]在歷史查詢的情況下,查詢條件可以包括:需查詢的服務器類型、應用標識、監(jiān)控維度標識、歷史時間范圍和采樣頻率。例如:用戶可以查詢服務器ID為偶數(shù)的所有服務器上的IE瀏覽器應用軟件的在2015年I月I日9時至10時時間段內(nèi)每隔5min采樣一次的CPU占用率。
[0025]步驟S2:監(jiān)控系統(tǒng)web服務器將查詢條件轉化為結構化查詢語言然后發(fā)送給監(jiān)控信息數(shù)據(jù)庫。
[0026]需要說明的是,該監(jiān)控信息數(shù)據(jù)庫用于接收總監(jiān)控服務器等設備采集到的關于被監(jiān)控服務器的所有監(jiān)控信息并且進行持久化保存。
[0027]步驟S3:監(jiān)控信息數(shù)據(jù)庫根據(jù)結構化查詢語言篩選出符合條件的監(jiān)控數(shù)據(jù)全集合,然后將監(jiān)控數(shù)據(jù)全集合按時間倒序排列,選取預設數(shù)量的時間最新的監(jiān)控數(shù)據(jù)作為單層線性表形式的結果集發(fā)送給監(jiān)控系統(tǒng)web服務器,其中結果集的排序依據(jù)為時間戳。
[0028]需要說明的是,監(jiān)控數(shù)據(jù)全集合中的多個數(shù)據(jù)是無序的。經(jīng)過時間倒序排列之后得到了一個以時間戳為排序依據(jù)的數(shù)據(jù)隊列。截取該數(shù)據(jù)隊列的前面預設數(shù)量的監(jiān)控數(shù)據(jù)(例如前100條),即得到了單層線性表(list)形式的結果集。該結果集中的每個元素都是一個鍵值對(key-value),鍵(key)為時間戳。例如:假設T1、T2……Tn表示時間,且Tl> Τ2……> Tn,則結果集可以記為:
[0029]“key = Tl, value = Tl下的所有偶數(shù)ID服務器的IE瀏覽器的CPU占有率;
[0030]key = T2, value = T2下的所有偶數(shù)ID服務器的IE瀏覽器的CPU占有率;
[0031]......;
[0032]key = Tn, value = Tn下的所有偶數(shù)ID服務器的IE瀏覽器的CPU占有率”。
[0033]步驟S3中,通過將監(jiān)控數(shù)據(jù)全集合按時間倒序排列后選取最開頭的部分數(shù)據(jù)返回,可以使得用戶獲得時間最新的監(jiān)控數(shù)據(jù),而這部分數(shù)據(jù)通常正好是用戶最關心的數(shù)據(jù)。以及,通過僅僅選取預設數(shù)量的監(jiān)控數(shù)據(jù)返回,能夠有效地控制數(shù)據(jù)傳輸量。
[0034]步驟S4:監(jiān)控系統(tǒng)web服務器將結果集轉換為CSV文件然后發(fā)送給展示監(jiān)控數(shù)據(jù)PC機。CSV (Comma-Separated Values)即逗號分隔值文件格式,它有時也稱為字符分隔值,因為分隔字符也可以不是逗號。CSV文件以純文本形式存儲表格數(shù)據(jù)(包括數(shù)字和文本)。純文本意味著該文件是一個字符序列,不含必須像二進制數(shù)字那樣被解讀的數(shù)據(jù)。CSV文件由任意數(shù)目的記錄組成,記錄間以某種換行符分隔;每條記錄由字段組成,字段間的分隔符是其它字符或字符串,最常見的是逗號或制表符。通常所有記錄都有完全相同的字段序列。CSV文件與其他格式的文件相比,具有數(shù)據(jù)量較小、易于以二維圖表展現(xiàn)等優(yōu)點。
[0035]可選地,“監(jiān)控系統(tǒng)web服務器將結果集轉換為CSV文件”的過程具體可以包括如下的步驟a和步驟b。
[0036]步驟a:監(jiān)控系統(tǒng)web服務器將結果集轉為雙層線性表形式的處理結果集,處理結果集的主級排序依據(jù)為時間戳,處理結果集的次級排序依據(jù)為服務器標識。例如:假設Tl、T2……Tn表示時間,且Tl >T2……> Τη,服務器ID為偶數(shù)的服務器標記為服務器2、服務器4……服務器2a,則處理結果集可以記為:
[0037]“key = Tl,(key =服務器2,value = Tl下的服務