本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,特別涉及一種操作系統(tǒng)運(yùn)行信息記錄方法及裝置。
背景技術(shù):
操作系統(tǒng)運(yùn)行過程中可能會出現(xiàn)一些錯誤和異常,為了方便運(yùn)維人員對操作系統(tǒng)出現(xiàn)的問題進(jìn)行維護(hù),操作系統(tǒng)中一般設(shè)置有日志系統(tǒng),由日志系統(tǒng)記錄操作系統(tǒng)過程中出現(xiàn)的錯誤和異常。這樣,運(yùn)維人員可以針對日志系統(tǒng)記錄的錯誤和異常,采用合理的方法對操作系統(tǒng)進(jìn)行維護(hù)。
目前,操作系統(tǒng)中設(shè)置的日志系統(tǒng),在操作系統(tǒng)出現(xiàn)運(yùn)行錯誤時,形成日志文件,對操作系統(tǒng)出現(xiàn)的錯誤信息進(jìn)行記錄。
針對于目前的日志系統(tǒng),僅能夠記錄操作系統(tǒng)自身運(yùn)行錯誤造成的系統(tǒng)故障和問題,無法對人為操作錯誤造成的系統(tǒng)故障和問題進(jìn)行記錄,比如用戶誤刪重要系統(tǒng)文件或配置文件編寫錯誤等造成的系統(tǒng)故障和問題。此時,運(yùn)維人員無法根據(jù)日志系統(tǒng)形成的日志文件確定系統(tǒng)故障原因,不便于對操作系統(tǒng)進(jìn)行維護(hù)。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明實(shí)施例提供了一種操作系統(tǒng)運(yùn)行信息記錄方法及裝置,便于運(yùn)維人員對操作系統(tǒng)進(jìn)行維護(hù)。
第一方面,本發(fā)明提供了一種操作系統(tǒng)運(yùn)行信息記錄方法,包括:
采集外部向所述操作系統(tǒng)發(fā)送的每一個輸入命令;
采集所述操作系統(tǒng)根據(jù)所述每一個輸入命令輸出的至少一個輸出信息;
將所述每一個輸入命令及所述至少一個輸出信息存儲到預(yù)設(shè)的存儲空間。
優(yōu)選地,所述將所述每一個輸入命令及所述至少一個輸出信息存儲到預(yù)設(shè)的存儲空間,包括:
s1:創(chuàng)建日志文件;
s2:按照采集時間順序,向所述日志文件中存儲采集到的所述輸入命令和所述輸出信息;
s3:當(dāng)所述日志文件的容量和存在時長中的至少一個達(dá)到預(yù)設(shè)的歸檔閾值時,將所述日志文件歸檔至所述存儲空間,并執(zhí)行s1。
優(yōu)選地,在所述將所述每一個輸入命令及所述至少一個輸出信息存儲到預(yù)設(shè)的存儲空間之后,進(jìn)一步包括:
接收外部輸入的查詢指令;
根據(jù)所述查詢指令從所述存儲空間中讀取至少一個所述輸入命令和/或至少一個所述輸出信息;
將讀取到的至少一個所述輸入命令和/或至少一個所述輸出信息輸出。
優(yōu)選地,進(jìn)一步包括:
判斷所述存儲空間的占用率是否超過預(yù)設(shè)的占用率閾值;
如果是,發(fā)出警告信息。
優(yōu)選地,進(jìn)一步包括:
記錄所述操作系統(tǒng)的運(yùn)行錯誤信息;
將所述運(yùn)行錯誤信息存儲到所述存儲空間。
第二方面,本發(fā)明提供了一種操作系統(tǒng)運(yùn)行信息記錄的裝置,包括:第一采集模塊、第二采集模塊和存儲模塊;其中,
所述第一采集模塊,用于采集外部向所述操作系統(tǒng)發(fā)送的每一個輸入命令;
所述第二采集模塊,用于采集所述操作系統(tǒng)根據(jù)所述第一采集模塊采集的所述每一個輸入命令輸出的至少一個輸出信息;
所述存儲模塊,用于將所述第一采集模塊采集到的所述每一個輸入命令及所述第二采集模塊采集到的所述至少一個輸出信息存儲到預(yù)設(shè)的存儲空間。
優(yōu)選地,所述存儲模塊,包括:創(chuàng)建單元、存儲單元和歸檔單元;
所述創(chuàng)建單元,用于創(chuàng)建日志文件;
所述存儲單元,用于按照采集時間順序,向所述創(chuàng)建單元創(chuàng)建的所述日志文件中存儲采集到的所述輸入命令和所述輸出信息;
所述歸檔單元,用于當(dāng)所述日志文件的容量和存在時長中的至少一個達(dá)到預(yù)設(shè)的歸檔閾值時,將所述日志文件歸檔至所述存儲空間,并觸發(fā)所述創(chuàng)建單元創(chuàng)建新的日志文件。
優(yōu)選地,進(jìn)一步包括:查詢模塊;
所述查詢模塊,用于接收外部輸入的查詢指令,根據(jù)所述查詢指令從所述存儲空間中讀取至少一個所述輸入命令和/或至少一個所述輸出信息,并將讀取到的至少一個所述輸入命令和/或至少一個所述輸出信息輸出。
優(yōu)選地,進(jìn)一步包括:監(jiān)測模塊;
所述監(jiān)測模塊,用于判斷所述存儲空間的占用率是否超過預(yù)設(shè)的占用率閾值,如果是,發(fā)出警告信息。
優(yōu)選地,進(jìn)一步包括:記錄模塊;
所述記錄模塊,用于記錄所述操作系統(tǒng)的運(yùn)行錯誤信息;
所述存儲模塊,進(jìn)一步用于將所述記錄模塊記錄的所述運(yùn)行錯誤信息存儲到所述存儲空間。
本發(fā)明實(shí)施例提供了一種操作系統(tǒng)運(yùn)行信息記錄方法及裝置,通過采集每一個輸入命令以及操作系統(tǒng)根據(jù)每一個輸入命令輸出的輸出信息,獲取用戶給操作系統(tǒng)下達(dá)的所有操作命令以及操作系統(tǒng)執(zhí)行這些操作命令輸出的輸出信息,再將這些操作命令和輸出信息存儲起來。由此可見,本發(fā)明可以對人為操作錯誤造成的系統(tǒng)故障和問題進(jìn)行記錄,從而實(shí)現(xiàn)便于運(yùn)維人員對操作系統(tǒng)進(jìn)行維護(hù)的目的。
附圖說明
為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1是本發(fā)明一個實(shí)施例提供的一種操作系統(tǒng)運(yùn)行信息記錄方法的流程圖;
圖2是本發(fā)明一個實(shí)施例提供的另一種操作系統(tǒng)運(yùn)行信息記錄方法的流程圖;
圖3是本發(fā)明一個實(shí)施例提供的一種操作系統(tǒng)運(yùn)行信息記錄裝置的結(jié)構(gòu)示意圖;
圖4是本發(fā)明一個實(shí)施例提供的另一種操作系統(tǒng)運(yùn)行信息記錄裝置的結(jié)構(gòu)示意圖;
圖5是本發(fā)明一個實(shí)施例提供的又一種操作系統(tǒng)運(yùn)行信息記錄裝置的結(jié)構(gòu)示意圖;
圖6是本發(fā)明一個實(shí)施例提供的再一種操作系統(tǒng)運(yùn)行信息記錄裝置的結(jié)構(gòu)示意圖;
圖7是本發(fā)明一個實(shí)施例提供的還一種操作系統(tǒng)運(yùn)行信息記錄裝置的結(jié)構(gòu)示意圖。
具體實(shí)施方式
為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例,基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動的前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
如圖1所示,本發(fā)明實(shí)施例提供了一種操作系統(tǒng)運(yùn)行信息記錄方法,包括以下步驟:
步驟101,采集外部向所述操作系統(tǒng)發(fā)送的每一個輸入命令。
步驟102,采集所述操作系統(tǒng)根據(jù)所述每一個輸入命令輸出的至少一個輸出信息。
步驟103,將所述每一個輸入命令及所述至少一個輸出信息存儲到預(yù)設(shè)的存儲空間。
本發(fā)明實(shí)施例提供了一種操作系統(tǒng)運(yùn)行信息記錄方法,通過采集每一個輸入命令以及操作系統(tǒng)根據(jù)每一個輸入命令輸出的輸出信息,獲取用戶給操作系統(tǒng)下達(dá)的所有操作命令以及操作系統(tǒng)執(zhí)行這些操作命令輸出的輸出信息,再將這些操作命令和輸出信息存儲起來。由此可見,本發(fā)明可以對人為操作錯誤造成的系統(tǒng)故障和問題進(jìn)行記錄,從而實(shí)現(xiàn)便于運(yùn)維人員對操作系統(tǒng)進(jìn)行維護(hù)的目的。
為了便于運(yùn)維人員查找人為操作錯誤造成的系統(tǒng)故障和問題,在本發(fā)明的一個實(shí)施例中,將輸入命令和輸出信息存按照采集時間順序存儲于預(yù)先創(chuàng)建的日志文件中。預(yù)先設(shè)置日志文件的歸檔閾值,即日志文件的容量和存在時長,當(dāng)日志文件的容量和存在時長中的至少一個達(dá)到預(yù)設(shè)的歸檔閾值時,將日志文件歸檔至預(yù)設(shè)的存儲空間,并重新創(chuàng)建日志文件以繼續(xù)記錄輸入命令和輸出信息。通過這種方式,便于運(yùn)維人員對不同時間段的系統(tǒng)故障和問題進(jìn)行查找,同時保證日志文件不會占用過多的存儲空間。
例如,日志文件a的容量歸檔閾值為1kb,存在時長歸檔閾值為7天,當(dāng)日志文件a中記錄的輸入命令和輸出信息到達(dá)1kb時,而存在時長不足7天時,將日志文件a歸檔到存儲空間,并創(chuàng)建新的日志文件b;日志文件b的容量歸檔閾值為1kb,存在時長歸檔閾值為7天,當(dāng)日志文件b中記錄的輸入命令和輸出信息不足1kb時,而存在時長到達(dá)7天時,將日志文件b歸檔到存儲空間,并再次創(chuàng)建新的日志文件。
通過上述方法,能夠便于運(yùn)維人員對不同時間段的系統(tǒng)故障和問題進(jìn)行查找,并控制日志文件的在預(yù)設(shè)存儲空間中的占有率。
在本發(fā)明的一個實(shí)施例中,接收外部輸入的查詢指令,根據(jù)外部輸入的查詢指令,從預(yù)設(shè)的存儲空間中讀取至少一個輸入命令和至少一個輸出信息,再將讀取到至少一個輸入命令和至少一個輸出信息按照指令進(jìn)行輸出。
例如,當(dāng)查詢時間點(diǎn)a與時間點(diǎn)b之間的刪除命令時,在存儲空間中遍歷每一個日志文件,讀取時間點(diǎn)a與時間點(diǎn)b之間的刪除命令,并直接展示給用戶或生成文件以便于查看;當(dāng)查詢時間點(diǎn)a與時間點(diǎn)b之間的輸出信息時,在存儲空間中遍歷每一個日志文件,讀取時間點(diǎn)a與時間點(diǎn)b之間的輸出信息,并直接展示給用戶或生成文件以便于查看;當(dāng)查詢時間點(diǎn)a與時間點(diǎn)b之間的輸入命令及其對應(yīng)的輸出信息時,在存儲空間中遍歷每一個日志文件,讀取時間點(diǎn)a與時間點(diǎn)b之間的輸入命令及其對應(yīng)的輸出信息,并直接展示給用戶或生成文件以便于查看。
通過上述方式,運(yùn)維人員可以方便的根據(jù)實(shí)際情況,從多個角度來查找系統(tǒng)故障和問題的原因。
在本發(fā)明的一個實(shí)施例中,為了防止日志文件占用過多的存儲空間,預(yù)先設(shè)定日志文件在預(yù)設(shè)存儲空間中的占用率閾值,當(dāng)日志文件在存儲空間中的占用率不小于日志文件的占用率閾值時,向用戶發(fā)出警告,用戶可以根據(jù)警告刪除或轉(zhuǎn)移部分已歸檔日志文件。
例如,日志文件的占用率閾值為80%,當(dāng)前存儲空間中的日志文件的占用率達(dá)到80%,則會向用戶發(fā)出警報(bào),用戶可以將部分已歸檔日志文件轉(zhuǎn)移到其他存儲空間,或直接刪除部分已歸檔日志文件。
在本發(fā)明的一個實(shí)施例中,在記錄人為操作錯誤的同時,還能夠記錄操作系統(tǒng)的運(yùn)行錯誤信息,并將操作系統(tǒng)的運(yùn)行錯誤信息一并存儲到預(yù)設(shè)的存儲空間中。
通過上述方法,運(yùn)維人員可以通過查詢?nèi)罩疚募?,從?nèi)因和外因兩方面,查詢導(dǎo)致系統(tǒng)發(fā)生故障和問題的原因,有利于運(yùn)維人員解決系統(tǒng)出現(xiàn)的故障和問題。
為了更好地說明本發(fā)明上述實(shí)施例,如圖2所示,本發(fā)明實(shí)施例在提供了另一種操作系統(tǒng)運(yùn)行信息記錄方法,包括以下步驟:
步驟201,采集操作系統(tǒng)接收到的每一個輸入命令。
在本發(fā)明實(shí)施例中,操作系統(tǒng)接收到的輸入命令包括:外部向操作系統(tǒng)發(fā)送的輸入命令和系統(tǒng)內(nèi)部各模塊間發(fā)送的輸入命令。
步驟202,采集操作系統(tǒng)根據(jù)每一個輸入命令輸出的至少一個輸出信息。
在本發(fā)明實(shí)施例中,操作系統(tǒng)根據(jù)接收到的輸入命令可能會有多個輸出,在采集的時候,根據(jù)每一個命令采集對應(yīng)的每一個輸出信息。
步驟203,創(chuàng)建日志文件。
在本發(fā)明實(shí)施例中,創(chuàng)建日志文件包括設(shè)置日志文件的歸檔閾值,即日志文件的容量和存在時長。
步驟204,按照采集時間順序,向日志文件中存儲采集到的輸入命令和輸出信息。
在本發(fā)明實(shí)施例中,與系統(tǒng)自身的日志系統(tǒng)同步記錄系統(tǒng)模塊間的輸入命令和輸出信息。例如,系統(tǒng)模塊間的輸入命令a和輸出信息b,會分別被系統(tǒng)自身的日志系統(tǒng)和本發(fā)明提供的信息記錄裝置同時記錄。
步驟205,判斷日志文件的容量和存在時長中的至少一個是否達(dá)到預(yù)設(shè)的歸檔閾值,如果是,執(zhí)行步驟210,否則執(zhí)行步驟206。
在本發(fā)明實(shí)施例中,日志文件的容量和存在時長中只要有一個達(dá)到預(yù)設(shè)的閾值,就可以將日志文件壓縮并存儲至預(yù)設(shè)的存儲空間,例如日志文件a的容量歸檔閾值為1kb,日志文件a的存在時長歸檔閾值為2天,如果日志文件a的容量到達(dá)1kb,而日志文件a的存在時長不足2天,則將日志文件a歸檔至預(yù)設(shè)的存儲空間;如果日志文件a的容量不足1kb,而日志文件a的存在時長到達(dá)2天,則也將日志文件a歸檔至預(yù)設(shè)的存儲空間。
步驟206,判斷存儲空間的占用率是否超過預(yù)設(shè)的占用率閾值,如果是,發(fā)出警告信息,否則執(zhí)行步驟207。
步驟207,接收外部輸入的查詢指令。
步驟208,根據(jù)查詢指令從存儲空間中讀取至少一個輸入命令和/或至少一個輸出信息。
在本發(fā)明實(shí)施例中,用戶可以根據(jù)實(shí)際需要,通過輸入查詢指令,只查詢輸入命令或輸出信息,也可以既查詢輸入命令又查詢輸出信息。通過這種方式實(shí)現(xiàn)對系統(tǒng)出現(xiàn)的故障和問題進(jìn)行多樣性的查找。
步驟209,將讀取到的至少一個輸入命令和/或至少一個輸出信息輸出,并結(jié)束當(dāng)前流程。
在本發(fā)明實(shí)施例中,讀取到的至少一個輸入命令和/或至少一個輸出信息既可以直接展示給用戶,也可以轉(zhuǎn)換成文件再輸出。
步驟210,將日志文件歸檔至預(yù)設(shè)的存儲空間,并執(zhí)行步驟203。
如圖3所示,本發(fā)明實(shí)施例提供了一種操作系統(tǒng)運(yùn)行信息記錄的裝置,包括:第一采集模塊301、第二采集模塊302和存儲模塊303;其中,
第一采集模塊301,用于采集外部向所述操作系統(tǒng)發(fā)送的每一個輸入命令;
第二采集模塊302,用于采集所述操作系統(tǒng)根據(jù)第一采集模塊301采集的所述每一個輸入命令輸出的至少一個輸出信息;
存儲模塊303,用于將第一采集模塊301采集到的所述每一個輸入命令及第二采集模塊302采集到的所述至少一個輸出信息存儲到預(yù)設(shè)的存儲空間。
如圖4所示,本發(fā)明實(shí)施例提供了另一種操作系統(tǒng)運(yùn)行信息記錄的裝置,存儲模塊303包括:創(chuàng)建單元3031、存儲單元3032和歸檔單元3033;
創(chuàng)建單元3031,用于創(chuàng)建日志文件;
存儲單元3032,用于按照采集時間順序,向創(chuàng)建單元3031創(chuàng)建的所述日志文件中存儲采集到的所述輸入命令和所述輸出信息;
歸檔單元3033,用于當(dāng)所述日志文件的容量和存在時長中的至少一個達(dá)到預(yù)設(shè)的歸檔閾值時,將所述日志文件歸檔至所述存儲空間,并觸發(fā)創(chuàng)建單元3031創(chuàng)建新的日志文件。
如圖5所示,本發(fā)明實(shí)施例提供了又一種操作系統(tǒng)運(yùn)行信息記錄的裝置,進(jìn)一步包括:查詢模塊501;
查詢模塊501,用于接收外部輸入的查詢指令,根據(jù)所述查詢指令從所述存儲空間中讀取至少一個所述輸入命令和/或至少一個所述輸出信息,并將讀取到的至少一個所述輸入命令和/或至少一個所述輸出信息輸出。
如圖6所示,本發(fā)明實(shí)施例提供了再一種操作系統(tǒng)運(yùn)行信息記錄的裝置,進(jìn)一步包括:監(jiān)測模塊601;
監(jiān)測模塊601,用于判斷所述存儲空間的占用率是否超過預(yù)設(shè)的占用率閾值,如果是,發(fā)出警告信息。
如圖7所示,本發(fā)明實(shí)施例提供了還一種操作系統(tǒng)運(yùn)行信息記錄的裝置,進(jìn)一步包括:記錄模塊701;
記錄模塊701,用于記錄所述操作系統(tǒng)的運(yùn)行錯誤信息;
存儲模塊303,進(jìn)一步用于將所述記錄模塊記錄的所述運(yùn)行錯誤信息存儲到所述存儲空間。
上述裝置內(nèi)的各單元之間的信息交互、執(zhí)行過程等內(nèi)容,由于與本發(fā)明方法實(shí)施例基于同一構(gòu)思,具體內(nèi)容可參見本發(fā)明方法實(shí)施例中的敘述,此處不再贅述。
本發(fā)明實(shí)施例提供了一種可讀介質(zhì),包括執(zhí)行指令,當(dāng)存儲控制器的處理器執(zhí)行所述執(zhí)行指令時,所述存儲控制器執(zhí)行本發(fā)明任意一個實(shí)施例中提供的操作系統(tǒng)運(yùn)行信息記錄方法。
本發(fā)明實(shí)施例提供了一種存儲控制器,包括:處理器、存儲器和總線;
所述存儲器用于存儲執(zhí)行指令,所述處理器與所述存儲器通過所述總線連接,當(dāng)所述存儲控制器運(yùn)行時,所述處理器執(zhí)行所述存儲器存儲的所述執(zhí)行指令,以使所述存儲控制器執(zhí)行本發(fā)明任意一個實(shí)施例中提供的操作系統(tǒng)運(yùn)行信息記錄方法。
綜上所述,本發(fā)明各個實(shí)施例至少具有如下有益效果:
1、本發(fā)明一個實(shí)施例中,通過采集每一個輸入命令以及操作系統(tǒng)根據(jù)每一個輸入命令輸出的輸出信息,獲取用戶給操作系統(tǒng)下達(dá)的所有操作命令以及操作系統(tǒng)執(zhí)行這些操作命令輸出的輸出信息,再將這些操作命令和輸出信息存儲起來。由此可見,本發(fā)明可以對人為操作錯誤造成的系統(tǒng)故障和問題進(jìn)行記錄,從而實(shí)現(xiàn)便于運(yùn)維人員對操作系統(tǒng)進(jìn)行維護(hù)的目的。
2、本發(fā)明一個實(shí)施例中,通過限定日志文件的容量防止日志文件過多的占用存儲空間,便于存儲日志文件。通過限定日志文件的存在時長,便于運(yùn)維人員按時間查找日志文件,進(jìn)一步實(shí)現(xiàn)便于運(yùn)維人員對操作系統(tǒng)進(jìn)行維護(hù)的目的。
3、本發(fā)明一個實(shí)施例中,通過檢測已歸檔的日志文件在存儲空間中的占用率是否超過預(yù)設(shè)的占用率閾值,避免因?yàn)橐褮w檔的日志文件過多而無法存儲新增的日志文件,從而保證運(yùn)維人員不會因?yàn)槿罩疚募笔Ф鵁o法找到引發(fā)系統(tǒng)故障和問題的原因,從而進(jìn)一步實(shí)現(xiàn)便于運(yùn)維人員對操作系統(tǒng)進(jìn)行維護(hù)的目的。
需要說明的是,在本文中,諸如第一和第二之類的關(guān)系術(shù)語僅僅用來將一個實(shí)體或者操作與另一個實(shí)體或操作區(qū)分開來,而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個······”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設(shè)備中還存在另外的相同因素。
最后需要說明的是:以上所述僅為本發(fā)明的較佳實(shí)施例,僅用于說明本發(fā)明的技術(shù)方案,并非用于限定本發(fā)明的保護(hù)范圍。凡在本發(fā)明的精神和原則之內(nèi)所做的任何修改、等同替換、改進(jìn)等,均包含在本發(fā)明的保護(hù)范圍內(nèi)。