Its自動列車監控系統的多級日誌消息處理方法
2023-05-29 17:04:31 1
專利名稱:Its自動列車監控系統的多級日誌消息處理方法
技術領域:
本發明涉及鐵路運輸系統中日誌消息處理方法,尤其涉及ITS自動列車監控系 統的多級日誌消息處理方法。
背景技術:
在系統中,需要日誌功能來記錄軟體系統運行過程中所發生的事件。目前系統 基本採用符合Syslog標準的日誌協議,日誌消息分為8個等級,從高至低依次為 Emergency、 Alert、 Critical、 Error、 Warning、 Notice、 Informational Debug。
當前大多系統在記錄日誌的過程中首先將日誌寫入消息隊列,然後再將隊列中 的日誌輸出。當消息隊列過長時,需要丟棄部分日誌消息,其結果是丟棄的日誌消 息中往往含有高優先級的日誌消息,稱之為信息損失。在這種情況下,為了減少信 息損失,提出了一種多級日誌消息處理方法。經文件檢索發現,目前沒有這方面的 方法。
發明內容
本發明的目的就是為了克服上述現有技術存在的缺陷,提供一種安全可靠的 ITS自動列車監控系統的多級日誌消息處理方法。
本發明的目的可以通過以下技術方案來實現ITS自動列車監控系統的多級日 志消息處理方法,其特徵在於,該方法包括以下步驟
(1) 定義應用級別按照系統中各個應用的重要性,定義每個應用的級別;
(2) 生成關係矩陣基於每個應用的級別與Syslog標準中所定義的日誌消息 等級,生成這兩者之間的關係矩陣;
(3) 定義關係矩陣元素優先級為關係矩陣中的元素定義彼此之間的優先級, 其表示了不同應用所生成的不同等級消息之間的優先級關係;
(4) 分配消息隊列為關係矩陣中的每個元素分配一個消息隊列,用來存儲該優先級的日誌消息,元素的優先級與消息隊列的優先級一一對應;
(5) 輸出日誌消息優先輸出優先級高的日誌消息;
(6) 丟棄日誌消息優先丟棄優先級低的日誌消息。 所述的定義關係矩陣元素優先級中
a. 某應用生成的某等級的日誌消息的優先級不低於等級低的日誌消息的優先
級;
b. 不同應用生成的同一等級的日誌消息,具有高等級的應用所生成的日誌消 息的優先級不低於低等級的應用所生成的日誌消息的優先級。
所述的優先輸出優先級高的日誌消息中僅當優先級高於某隊列的隊列中沒有 日誌消息時,才可輸出該隊列中的日誌消息。
所述的優先丟棄優先級低的日誌消息中僅當優先級低於該隊列的隊列中沒有 日誌消息時,才可丟棄該隊列中的日誌消息。
與現有技術相比,本發明具有實質性特點和顯著進步 一方面,本發明釆用多 級思想,在Syslog協議所定義的8個日誌消息等級之外,結合系統中各個應用的 等級,對日誌消息的等級顆粒度進行了更細的劃分,能更準確的描述日誌消息優先 級;另一方面,基於細顆粒度的日誌消息優先級的多級日誌消息處理方法,提高了 輸出日誌的有效性,從而為軟體系統運行過程中的事件分析提供了更多的有效信 息。該方法在軟體系統的日誌功能方面尚數首創。
具體實施例方式
以下結合具體實施例對本發明做進一步說明。
本發明首先為生成日誌消息的各個應用定義不同等級,然後結合Syslog標準 中所規定的日誌消息等級,為不同應用所生成的不同等級日誌消息定義優先級,最 後按照日誌消息的優先級優先輸出高優先級的日誌消息,且在需要丟棄日誌消息時 優先丟棄低優先級低的日誌消息。本發明的方法在日誌消息處理方面尚屬首創,可 以減少軟體系統在丟棄日誌消息時不考慮日誌消息等級而造成的信息損失,從而得 到更多有效的日誌消息。本發明被用於軟體系統日誌功能,為通過日誌消息分析軟 件系統運行過程中所發生的事件提供了更為關鍵的信息。
一種多級日誌消息處理方法,首先為生成日誌消息的各個應用定義不同級別, 然後結合Syslog標準中對日誌消息等級的定義,為不同應用所生成的不同等級消息定義優先級,最後按照日誌消息的優先級優先輸出高優先級的日誌消息,且在需 要丟棄日誌消息時優先丟棄低優先級低的日誌消息。 本發明的方法限定如下
(1) 定義應用級別;
(2) 生成關係矩陣;
(3) 定義關係矩陣元素優先級;
(4) 分配消息隊列;
(5) 發送日誌消息;
(6) 丟棄日誌消息。
本發明的方法進一步限定如下
(1) 定義應用級別。按照軟體系統中各個應用的重要性,定義每個應用的級
別;
(2) 生成關係矩陣。基於每個應用的級別和Syslog標準中所定義的日誌消息 等級,生成這兩者之間的關係矩陣;
(3) 定義關係矩陣元素優先級。為關係矩陣中的元素定義彼此之間的優先級, 其表示了不同應用所生成的不同等級消息之間的優先級關係;
(4) 分配消息隊列。為關係矩陣中的每個元素分配一個消息隊列,用來存儲 該優先級的日誌消息,元素的優先級與消息隊列的優先級一一對應;
(5) 輸出日誌消息。在輸出日誌消息時,其處理方法是,優先輸出優先級高 的曰志消息。
(6) 丟棄日誌消息。當來不及處理消息隊列中的日誌消息時,其處理方法是, 優先丟棄優先級低的日誌消息。
對於某個應用,其所生成的某等級的日誌消息的優先級不能低於等級低的日誌 消息的優先級。對於不同應用所生成的同一等級的日誌消息,具有高等級的應用所 生成的日誌消息的優先級不能低於低等級的應用所生成的日誌消息的優先級。
對於某個優先級的日誌消息隊列,步驟(5)具體實現只有當優先級高於該 隊列的隊列中沒有日誌消息時,才會輸出該隊列中的日誌消息;步驟(6)具體實 現只有當優先級低於該隊列的隊列中沒有日誌消息時,才會丟棄該隊列中的日誌 消息。
實施例下面結合本發明在有n個應用的軟體系統中,具體闡述其實施方式,具體步驟
如下
(1)定義應用等級。設某軟體系統中有11個應用^={4,4,-"4},為每個應
用4指定一個等級£'£{1,2"'""},且Z^^"。Li的值越小,表明其應用重要性越高。
,尺, 尺, ,
(2)生成關係矩陣。令關係矩陣i ^二
及21 及22
、及"1 及"2
尺
,其中Rij表示應用
Ai所生成的等級為j的日誌消息;
(3) 定義關係矩陣元素優先級。令P(Rij)表示關係矩陣R中日誌消息Rij在 整個關係矩陣中的優先級,其中屍(A)"1,2,…,8"、且,#W")。元
素之間的優先級滿足以下兩個條件 若j^, A<、則P(&XP(iU;
若1=3, j<t,則^A)〈屍W");
(4) 分配消息隊列。為關係矩陣R中的每個元素Rij分配一個消息隊列,令 Q(Rij)表示存儲關係矩陣R中日誌消息Rij的隊列,所生成的日誌消息Rij發送到 相應的隊列Q(Rij)中;
(5) 發送日誌消息。對於任意消息隊列Q(Rij),令^為優先級大於P(Rij)的隊 列集合,僅當^中所有隊列中為空時,才發送隊列Q(Rij)中的日誌消息;
(6) 丟棄日誌消息。對於任意消息隊列Q(Rij),令。'為優先級小於P(Rij)的 隊列集合,僅當。'中所有隊列為空時,才丟棄隊列Q(Rij)中的日誌消息。
權利要求
1.ITS自動列車監控系統的多級日誌消息處理方法,其特徵在於,該方法包括以下步驟(1)定義應用級別按照系統中各個應用的重要性,定義每個應用的級別;(2)生成關係矩陣基於每個應用的級別與Syslog標準中所定義的日誌消息等級,生成這兩者之間的關係矩陣;(3)定義關係矩陣元素優先級為關係矩陣中的元素定義彼此之間的優先級,其表示了不同應用所生成的不同等級消息之間的優先級關係;(4)分配消息隊列為關係矩陣中的每個元素分配一個消息隊列,用來存儲該優先級的日誌消息,元素的優先級與消息隊列的優先級一一對應;(5)輸出日誌消息優先輸出優先級高的日誌消息;(6)丟棄日誌消息優先丟棄優先級低的日誌消息。
2. 根據權利要求1所述的ITS自動列車監控系統的多級日誌消息處理方法, 其特徵在於,所述的定義關係矩陣元素優先級中a. 某應用生成的某等級的日誌消息的優先級不低於等級低的日誌消息的優先級;b. 不同應用生成的同一等級的日誌消息,具有高等級的應用所生成的日誌消 息的優先級不低於低等級的應用所生成的日誌消息的優先級。
3. 根據權利要求1所述的ITS自動列車監控系統的多級日誌消息處理方法, 其特徵在於,所述的優先輸出優先級高的日誌消息中僅當優先級高於某隊列的隊 列中沒有日誌消息時,才可輸出該隊列中的日誌消息。
4. 根據權利要求1所述的ITS自動列車監控系統的多級日誌消息處理方法, 其特徵在於,所述的優先丟棄優先級低的日誌消息中僅當優先級低於該隊列的隊列中沒有日誌消息時,才可丟棄該隊列中的日誌消息。
全文摘要
本發明涉及ITS自動列車監控系統的多級日誌消息處理方法,該方法包括以下步驟定義應用級別;生成關係矩陣;定義關係矩陣元素優先級;分配消息隊列;輸出日誌消息;丟棄日誌消息。與現有技術相比,本發明具有實質性特點和顯著進步一方面,本發明採用多級思想,在Syslog協議所定義的8個日誌消息等級之外,結合系統中各個應用的等級,對日誌消息的等級顆粒度進行了更細的劃分,能更準確的描述日誌消息優先級;另一方面,基於細顆粒度的日誌消息優先級的多級日誌消息處理方法,提高了輸出日誌的有效性,從而為軟體系統運行過程中的事件分析提供了更多的有效信息。該方法在軟體系統的日誌功能方面尚數首創。
文檔編號G05B19/048GK101515246SQ20081020814
公開日2009年8月26日 申請日期2008年12月29日 優先權日2008年12月29日
發明者輝 宮, 郝黎明 申請人:卡斯柯信號有限公司