專利名稱:一種實現(xiàn)日志管理的計算機系統(tǒng)及其方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計算機系統(tǒng),尤其涉及實現(xiàn)日志管理的計算機系統(tǒng)及其方法。
背景技術(shù):
在計算機系統(tǒng)中(例如Linux操作系統(tǒng))中,日志作為記錄系統(tǒng)和用戶行為的一種技術(shù)手段,可以對系統(tǒng)和用戶的行為進(jìn)行查詢、跟蹤和分析。在Linux系統(tǒng)中,除了系統(tǒng)內(nèi)核模塊會生成日志外,用戶態(tài)的應(yīng)用程序 也會生成日志,用戶可以根據(jù)這些日志來分析系統(tǒng)和應(yīng)用程序的健康狀態(tài)。但是,由于日志文件的大小是線性增長的,即系統(tǒng)運行時間越長,日志記載的內(nèi)容也會越來越多,日志文件也會越來越大。面對海量的日志,當(dāng)需要去查詢分析特定的日志內(nèi)容時,得花費大量的時間來查找這些日志信息。并且,日志文件容量的變大,也會造成大量的磁盤空間被占用,日志文件中的冗余信息越多,造成的磁盤浪費就越嚴(yán)重。再有,日志文件的寫入,需要讀寫磁盤的操作,若大量日志不停地寫入磁盤,會對磁盤的健康造成不利影響。因此,如何通過有效地管理日志文件來減少磁盤空間的浪費,并方便查詢和檢索,是當(dāng)前計算機系統(tǒng)日志管理亟待要解決的問題。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題是提供一種實現(xiàn)日志管理的計算機系統(tǒng)及其方法,能夠減少磁盤空間的浪費。為了解決上述技術(shù)問題,本發(fā)明提供了一種實現(xiàn)日志管理的計算機系統(tǒng),包括分別與用于協(xié)調(diào)控制的系統(tǒng)內(nèi)核模塊連接的日志分類模塊、日志轉(zhuǎn)儲模塊和/或日志管理模塊,其中日志分類模塊,用于根據(jù)日志的來源將日志分類,通過系統(tǒng)內(nèi)核模塊將分類的日志內(nèi)容傳遞給日志轉(zhuǎn)儲模塊和日志管理模塊;日志轉(zhuǎn)儲模塊,用于將分類的日志內(nèi)容寫入到內(nèi)存保存的日志文件中,待條件滿足后將日志文件和/或打包壓縮的日志文件包寫入磁盤;日志管理模塊,用于對分類的日志按時間周期方式或文件容量方式進(jìn)行管理,在相應(yīng)設(shè)置的時間條件或容量條件滿足時,將對應(yīng)的日志文件打包壓縮,通過日志轉(zhuǎn)儲模塊將打包壓縮的日志文件包傳遞給日志轉(zhuǎn)儲模塊。進(jìn)一步地,日志分類模塊分類的日志包括內(nèi)核日志、重要用戶態(tài)日志、一般用戶態(tài)日志、會產(chǎn)生大量信息的日志以及重要的應(yīng)用程序日志中的一種或多種。進(jìn)一步地,日志管理模塊按所述時間周期方式管理,即預(yù)先動態(tài)設(shè)置時間周期,當(dāng)接收并寫入了一個時間周期的日志后,則將日志文件打包壓縮,并將原有日志文件清空來接收新日志;或者按文件容量方式管理,即預(yù)先動態(tài)設(shè)置日志文件最大容量,當(dāng)接收并寫入了最大容量的日志文件后,則將該日志文件打包壓縮,將原有日志文件清空來接收新日志;日志轉(zhuǎn)儲模塊將新的日志或重要應(yīng)用程序的日志相應(yīng)的日志文件存入系統(tǒng)磁盤上;或者,待時間周期的條件或待文件容量的條件滿足后,將相應(yīng)的日志文件包轉(zhuǎn)儲于專門存放歷史日志的磁盤中。進(jìn)一步地,該系統(tǒng)還包括與系統(tǒng)內(nèi)核模塊連接的日志檢索模塊,其中日志檢索模塊,用在需要檢索日志時,從存儲歷史日志磁盤中調(diào)出舊的日志包,解壓后進(jìn)行分析及檢索;或直接從系統(tǒng)磁盤中檢索獲取。進(jìn)一步地,日志檢索模塊在要檢索舊的日志時,從存儲歷史日志磁盤中調(diào)出舊的日志包,解壓后進(jìn)行分析及檢索;在需要檢索新的日志或重要應(yīng)用程序的日志時,直接從系 統(tǒng)磁盤中檢索獲取。為了解決上述技術(shù)問題,本發(fā)明提供了一種計算機系統(tǒng)實現(xiàn)日志管理的方法,包括如下步驟根據(jù)日志的來源將日志分類;將分類的日志內(nèi)容寫入到內(nèi)存保存的日志文件中,待條件滿足后將日志文件和/或打包壓縮的日志文件包寫入磁盤;和/或?qū)Ψ诸惖娜罩景磿r間周期方式或文件容量方式進(jìn)行管理,在相應(yīng)設(shè)置的時間條件或容量條件滿足時,將對應(yīng)的日志文件打包壓縮成日志文件包。進(jìn)一步地,根據(jù)日志的來源將日志分類包括內(nèi)核日志、重要用戶態(tài)日志、一般用戶態(tài)日志、會產(chǎn)生大量信息的日志以及重要的應(yīng)用程序日志中的一種或多種。進(jìn)一步地,將分類的日志內(nèi)容寫入到內(nèi)存保存的日志文件中,待條件滿足后將日志文件和/或打包壓縮的日志文件包寫入磁盤;和/或?qū)Ψ诸惖娜罩景磿r間周期方式或文件容量方式進(jìn)行管理,在相應(yīng)設(shè)置的時間條件或容量條件滿足時,將對應(yīng)的日志文件打包壓縮成日志文件包,具體包括將分類的新日志或重要應(yīng)用程序的日志相應(yīng)的日志文件存入系統(tǒng)磁盤上;或者,待時間條件滿足或待容量條件滿足后將相應(yīng)的日志文件包轉(zhuǎn)儲于專門存放歷史日志的磁盤中;和/或日志管理模塊按所述時間周期方式管理,即預(yù)先動態(tài)設(shè)置時間周期,當(dāng)接收并寫入了一個時間周期的日志后,則將日志文件打包壓縮,并將原有日志文件清空來接收新日志;或者按文件容量方式管理,即預(yù)先動態(tài)設(shè)置日志文件最大容量,當(dāng)接收并寫入了最大容量的日志文件后,則將該日志文件打包壓縮,將原有日志文件清空來接收新日志。進(jìn)一步地,該方法還包括在需要檢索日志時,從存儲歷史日志磁盤中調(diào)出舊的日志包,解壓后進(jìn)行分析及檢索;或直接從系統(tǒng)磁盤中檢索獲取。進(jìn)一步地,在需要檢索日志時,從存儲歷史日志磁盤中調(diào)出舊的日志包,解壓后進(jìn)行分析及檢索;或直接從系統(tǒng)磁盤中檢索獲取,具體包括在需要檢索舊的日志時,從存儲歷史日志磁盤中調(diào)出舊的日志包,解壓后進(jìn)行分析及檢索;在需要檢索新的日志或重要應(yīng)用程序的日志時,直接從系統(tǒng)磁盤中檢索獲取。本發(fā)明解決了傳統(tǒng)的計算機系統(tǒng)對日志管理中日志文件的線性增長導(dǎo)致的磁盤空間浪費以及檢索查詢不方便等問題,使得日志文件能夠得到有效的管理和處理。
圖I是本發(fā)明的實現(xiàn)日志管理的計算機系統(tǒng)實施例的結(jié)構(gòu)框圖;圖2是本發(fā)明的計算機系統(tǒng)實現(xiàn)日志管理的方法實施例的流程圖。
具體實施例方式以下將結(jié)合附圖和優(yōu)選實施例詳細(xì)說明 本發(fā)明的技術(shù)方案。應(yīng)該理解,以下列舉的實施例僅用于說明和解釋本發(fā)明,而不構(gòu)成對本發(fā)明技術(shù)方案的限制。如圖I所示,是本發(fā)明提供的實現(xiàn)日志管理的計算機系統(tǒng)實施例,其結(jié)構(gòu)包括分別與用于協(xié)調(diào)控制的系統(tǒng)內(nèi)核模塊連接的日志分類模塊、日志轉(zhuǎn)儲模塊和/或日志管理模塊,其中日志分類模塊,用于根據(jù)日志的來源將日志分類,通過系統(tǒng)內(nèi)核模塊將分類的日志內(nèi)容傳遞給日志轉(zhuǎn)儲模塊和日志管理模塊;日志轉(zhuǎn)儲模塊,用于將分類的日志內(nèi)容寫入到內(nèi)存保存的日志文件中,待條件滿足后將日志文件和/或打包壓縮的日志文件包寫入磁盤;日志管理模塊,用于對分類的日志采用按時間周期方式或文件容量方式進(jìn)行管理,在相應(yīng)設(shè)置的時間條件或容量條件滿足時,將對應(yīng)的日志文件打包壓縮;通過日志轉(zhuǎn)儲模塊將打包壓縮的日志文件包傳遞給日志轉(zhuǎn)儲模塊。在上述系統(tǒng)實施例中,計算機系統(tǒng)例如為Linux操作系統(tǒng),日志分類模塊分類的日志包括內(nèi)核日志、重要用戶態(tài)日志、一般用戶態(tài)日志、可能會產(chǎn)生大量信息的日志以及重要的應(yīng)用程序日志中的一種或多種。這樣做的好處是,可以從來源上將日志進(jìn)行分類,比如發(fā)現(xiàn)用戶態(tài)應(yīng)用程序A出現(xiàn)了問題,要查詢和分析應(yīng)用程序A出問題的原因,只需調(diào)出應(yīng)用程序A所屬的日志類型,然后查詢及分析即可。在上述系統(tǒng)實施例中,日志管理模塊按時間周期方式管理,即預(yù)先動態(tài)設(shè)置時間周期,如設(shè)置以一天為一周期,或設(shè)置以一周為一周期,當(dāng)接收并寫入了一個周期的日志后,則將日志文件打包壓縮,并將原有日志文件清空來接收新日志;或者按文件容量方式管理,即預(yù)先動態(tài)設(shè)置日志文件最大容量,如設(shè)置IMB為最大容量,或設(shè)置IOMB為最大容量,當(dāng)接收并寫入了最大容量的日志文件后,則將該日志文件打包壓縮,將原有日志文件清空來接收新日志;日志轉(zhuǎn)儲模塊將新的日志或重要應(yīng)用程序的日志相應(yīng)的日志文件存入系統(tǒng)磁盤上;或者,待時間周期的條件或待文件容量的條件滿足后將相應(yīng)的日志文件包轉(zhuǎn)儲于專門存放歷史日志的磁盤中。這樣做的好處是,避免了頻繁的對系統(tǒng)磁盤進(jìn)行讀寫操作,有效的保護了磁盤狀態(tài),特別是如U盤等有讀寫限制的系統(tǒng)磁盤,則有效地的延遲了其使用壽命。上述系統(tǒng)實施例還包括與系統(tǒng)內(nèi)核模塊連接的日志檢索模塊,其中日志檢索模塊,用在需要檢索日志時,從存儲歷史日志磁盤中調(diào)出舊的日志包,解壓后進(jìn)行分析及檢索,或直接從系統(tǒng)磁盤中檢索獲取。日志檢索模塊在要檢索舊的日志時,從存儲歷史日志磁盤中調(diào)出舊的日志包,解壓后進(jìn)行分析及檢索;在需要檢索新的日志或重要應(yīng)用程序的日志時,直接從系統(tǒng)磁盤中檢索獲取。這樣,本發(fā)明通過對日志進(jìn)行分類及分級管理和存儲,將時間很久的日志以及不重要的日志打包壓縮后存放在專門存儲歷史日志的磁盤上;而將最新的日志、重要的日志存放在系統(tǒng)磁盤上。本發(fā)明針對上述系統(tǒng)實施 例,相應(yīng)地還提供了計算機系統(tǒng)實現(xiàn)日志管理的方法實施例,其流程包括如下步驟110 :根據(jù)日志的來源將日志分類;分類的日志包括內(nèi)核日志、重要用戶態(tài)日志、一般用戶態(tài)日志、可能會產(chǎn)生大量信息的日志以及重要的應(yīng)用程序日志中的一種或多種。如內(nèi)核日志,它對應(yīng)于kernel, log。每類日志類型對應(yīng)于一個日志文件類型。120 :將分類的日志內(nèi)容寫入到內(nèi)存保的日志文件中,待條件滿足后將日志文件和/或日志文件包寫入磁盤;將分類的新日志或重要應(yīng)用程序的日志相應(yīng)的日志文件存入系統(tǒng)磁盤上;或者,待時間條件滿足或待容量條件滿足后將相應(yīng)的日志文件包轉(zhuǎn)儲于專門存放歷史日志的磁盤中。如內(nèi)核日志類型,它先被記錄在內(nèi)存的mem. kernel, log中;當(dāng)設(shè)定條件滿足后,例如men. kernel, log中日志信息條數(shù)達(dá)到一百條后,將內(nèi)存的日志文件存儲到系統(tǒng)磁盤上,并清空內(nèi)存中的日志文件。如mem. kernel, log達(dá)到一天的周期要求后,將其轉(zhuǎn)儲到系統(tǒng)磁盤上,并標(biāo)明生成日期,如kernle. log. 20120101,并清空內(nèi)存中的日志文件mem.kernel, log。120’ 對分類的日志采用按時間周期方式或文件容量方式進(jìn)行管理,在設(shè)置的時間條件或容量條件滿足時,將日志文件打包壓縮;按時間周期方式管理,即預(yù)先動態(tài)設(shè)置時間周期(如設(shè)一天為一周期,或設(shè)一周為一周期)當(dāng)接收并寫入了一個周期的日志后,則將日志文件打包壓縮,并將原有日志文件清空來接收新日志;或按日志文件容量管理,即預(yù)先動態(tài)設(shè)置日志文件最大容量(如設(shè)IMB為最大容量,或設(shè)10MB為最大容量)當(dāng)接收并寫入了最大容量的日志后,則將該日志文件打包壓縮,將原有日志文件清空來接收新日志。130 :在需要檢索日志時,從存儲歷史日志磁盤中調(diào)出舊的日志包解壓后進(jìn)行檢索,或直接從系統(tǒng)磁盤中檢索獲取。在要檢索舊的日志時,從存儲歷史日志磁盤中調(diào)出舊的日志包,解壓后進(jìn)行分析及檢索;在需要檢索新的日志或重要應(yīng)用程序的日志時,直接從系統(tǒng)磁盤中檢索獲取。雖然本發(fā)明所揭露的實施方式如上,但所述的內(nèi)容只是為了便于理解本發(fā)明而采用的實施方式,并非用以限定本發(fā)明。任何本發(fā)明所屬技術(shù)領(lǐng)域內(nèi)的技術(shù)人員,在不脫離本發(fā)明所揭露的精神和范圍的前提下,可以在實施的形式上及細(xì)節(jié)上作任何的修改與變化,但本發(fā)明的專利保護范圍,仍須以所附的權(quán)利要求書所界定的范圍為準(zhǔn)。
權(quán)利要求
1.一種實現(xiàn)日志管理的計算機系統(tǒng),其特征在于,包括分別與用于協(xié)調(diào)控制的系統(tǒng)內(nèi)核模塊連接的日志分類模塊、日志轉(zhuǎn)儲模塊和/或日志管理模塊,其中 日志分類模塊,用于根據(jù)日志的來源將日志分類,通過系統(tǒng)內(nèi)核模塊將分類的日志內(nèi)容傳遞給日志轉(zhuǎn)儲模塊和日志管理模塊; 日志轉(zhuǎn)儲模塊,用于將分類的日志內(nèi)容寫入到內(nèi)存保存的日志文件中,待條件滿足后將日志文件和/或打包壓縮的日志文件包寫入磁盤; 日志管理模塊,用于對分類的日志按時間周期方式或文件容量方式進(jìn)行管理,在相應(yīng)設(shè)置的時間條件或容量條件滿足時,將對應(yīng)的日志文件打包壓縮,通過日志轉(zhuǎn)儲模塊將打包壓縮的日志文件包傳遞給日志轉(zhuǎn)儲模塊。
2.按照權(quán)利要求I所述的系統(tǒng),其特征在于, 所述日志分類模塊分類的日志包括內(nèi)核日志、重要用戶態(tài)日志、一般用戶態(tài)日志、會產(chǎn)生大量信息的日志以及重要的應(yīng)用程序日志中的一種或多種。
3.按照權(quán)利要求I所述的系統(tǒng),其特征在于, 所述日志管理模塊按所述時間周期方式管理,即預(yù)先動態(tài)設(shè)置時間周期,當(dāng)接收并寫入了一個時間周期的日志后,則將日志文件打包壓縮,并將原有日志文件清空來接收新日志;或者按所述文件容量方式管理,即預(yù)先動態(tài)設(shè)置日志文件最大容量,當(dāng)接收并寫入了所述最大容量的日志文件后,則將該日志文件打包壓縮,將原有日志文件清空來接收新日志; 所述日志轉(zhuǎn)儲模塊將新的日志或重要應(yīng)用程序的日志相應(yīng)的日志文件存入系統(tǒng)磁盤上;或者,待所述時間周期的條件或待所述文件容量的條件滿足后,將相應(yīng)的日志文件包轉(zhuǎn)儲于專門存放歷史日志的磁盤中。
4.按照權(quán)利要求3所述的系統(tǒng),其特征在于,還包括與系統(tǒng)內(nèi)核模塊連接的日志檢索模塊,其中 日志檢索模塊,用在需要檢索日志時,從存儲歷史日志磁盤中調(diào)出舊的日志包,解壓后進(jìn)行分析及檢索;或直接從系統(tǒng)磁盤中檢索獲取。
5.按照權(quán)利要求4所述的系統(tǒng),其特征在于, 所述日志檢索模塊在要檢索舊的日志時,從所述存儲歷史日志磁盤中調(diào)出舊的日志包,解壓后進(jìn)行分析及檢索;在需要檢索新的日志或重要應(yīng)用程序的日志時,直接從所述系統(tǒng)磁盤中檢索獲取。
6.一種計算機系統(tǒng)實現(xiàn)日志管理的方法,包括如下步驟 根據(jù)日志的來源將日志分類; 將分類的日志內(nèi)容寫入到內(nèi)存保存的日志文件中,待條件滿足后將日志文件和/或打包壓縮的日志文件包寫入磁盤;和/或?qū)Ψ诸惖娜罩景磿r間周期方式或文件容量方式進(jìn)行管理,在相應(yīng)設(shè)置的時間條件或容量條件滿足時,將對應(yīng)的日志文件打包壓縮成日志文件包。
7.按照權(quán)利要求6所述的方法,其特征在于,所述根據(jù)日志的來源將日志分類包括內(nèi)核日志、重要用戶態(tài)日志、一般用戶態(tài)日志、會產(chǎn)生大量信息的日志以及重要的應(yīng)用程序日志中的一種或多種。
8.按照權(quán)利要求6所述的方法,其特征在于,將分類的日志內(nèi)容寫入到內(nèi)存保存的日志文件中,待條件滿足后將日志文件和/或打包壓縮的日志文件包寫入磁盤;和/或?qū)Ψ诸惖娜罩景磿r間周期方式或文件容量方式進(jìn)行管理,在相應(yīng)設(shè)置的時間條件或容量條件滿足時,將對應(yīng)的日志文件打包壓縮成日志文件包,具體包括 將分類的新日志或重要應(yīng)用程序的日志相應(yīng)的日志文件存入系統(tǒng)磁盤上;或者,待時間條件滿足或待容量條件滿足后將相應(yīng)的日志文件包轉(zhuǎn)儲于專門存放歷史日志的磁盤中;和/或所述日志管理模塊按所述時間周期方式管理,即預(yù)先動態(tài)設(shè)置時間周期,當(dāng)接收并寫入了一個時間周期的日志后,則將日志文件打包壓縮,并將原有日志文件清空來接收新日志;或者按所述文件容量方式管理,即預(yù)先動態(tài)設(shè)置日志文件最大容量,當(dāng)接收并寫入了所述最大容量的日志文件后,則將該日志文件打包壓縮,將原有日志文件清空來接收新日志。
9.按照權(quán)利要求8所述的方法,其特征在于,還包括 在需要檢索日志時,從存儲歷史日志磁盤中調(diào)出舊的日志包,解壓后進(jìn)行分析及檢索;或直接從系統(tǒng)磁盤中檢索獲取。
10.按照權(quán)利要求9所述的方法,其特征在于,所述在需要檢索日志時,從存儲歷史日志磁盤中調(diào)出舊的日志包,解壓后進(jìn)行分析及檢索;或直接從系統(tǒng)磁盤中檢索獲取,具體包括 在需要檢索舊的日志時,從所述存儲歷史日志磁盤中調(diào)出舊的日志包,解壓后進(jìn)行分析及檢索;在需要檢索新的日志或重要應(yīng)用程序的日志時,直接從所述系統(tǒng)磁盤中檢索獲取。
全文摘要
本發(fā)明披露了一種實現(xiàn)日志管理的計算機系統(tǒng)及其方法,其中系統(tǒng)包括分別與系統(tǒng)內(nèi)核模塊連接的日志分類模塊將日志分類;日志轉(zhuǎn)儲模塊將分類的日志內(nèi)容寫入到內(nèi)存保存的日志文件中,待條件滿足后將日志文件和/或打包壓縮的日志文件包寫入磁盤;日志管理模塊對分類的日志按時間周期方式或文件容量方式進(jìn)行管理,在設(shè)置的條件滿足時將對應(yīng)的日志文件打包壓縮,通過日志轉(zhuǎn)儲模塊將打包壓縮的日志文件包傳遞給日志轉(zhuǎn)儲模塊。本發(fā)明通過有效地管理日志文件,解決了日志文件線性增長導(dǎo)致磁盤空間浪費以及檢索查詢不方便等諸多問題。
文檔編號G06F11/34GK102637142SQ20121011030
公開日2012年8月15日 申請日期2012年4月13日 優(yōu)先權(quán)日2012年4月13日
發(fā)明者唐金榮, 施培任 申請人:浪潮(北京)電子信息產(chǎn)業(yè)有限公司