亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種日志信息輸出控制方法及裝置與流程

文檔序號(hào):12063559閱讀:175來(lái)源:國(guó)知局
一種日志信息輸出控制方法及裝置與流程

本申請(qǐng)涉及計(jì)算機(jī)應(yīng)用技術(shù)領(lǐng)域,尤其涉及一種日志信息輸出控制方法及裝置。



背景技術(shù):

日志是一種用于記錄系統(tǒng)運(yùn)行情況的文本信息,當(dāng)系統(tǒng)出現(xiàn)故障時(shí),維護(hù)人員可以通過(guò)分析日志信息的方式來(lái)排查故障,此外,日志信息也是對(duì)系統(tǒng)進(jìn)行優(yōu)化或調(diào)整時(shí)的重要依據(jù)。

日志信息的輸出包括寫(xiě)入日志文件、在控制臺(tái)展現(xiàn)等方式,根據(jù)所記錄事件的重要程度,日志信息被劃分為若干級(jí)別,例如,一種四級(jí)分類(lèi)體系下的日志信息級(jí)別包括debug、info、warn和error,其重要程度為:debug<info<warn<error。在系統(tǒng)正常運(yùn)行過(guò)程中,會(huì)產(chǎn)生大量的日志信息,基于性能方面的考慮,一般會(huì)將系統(tǒng)配置為僅對(duì)比較重要的日志信息(例如warn及以上級(jí)別)進(jìn)行輸出,而當(dāng)需要進(jìn)行故障排查時(shí)或其他功能測(cè)試時(shí),系統(tǒng)維護(hù)人員則希望看到包括debug、info在內(nèi)的更為詳盡的日志信息。為滿足上述需求,現(xiàn)有技術(shù)的實(shí)現(xiàn)方式是通過(guò)重啟系統(tǒng)、加載不同的配置文件以控制日志信息的輸出級(jí)別,然而對(duì)于在線運(yùn)行的系統(tǒng)而言,重啟的代價(jià)往往是非常大的,為了改變?nèi)罩拘畔⒌妮敵黾?jí)別而頻繁重啟系統(tǒng)可能會(huì)導(dǎo)致更為嚴(yán)重的問(wèn)題,例如,引起暫時(shí)性的服務(wù)不可用。



技術(shù)實(shí)現(xiàn)要素:

針對(duì)上述技術(shù)問(wèn)題,本申請(qǐng)?zhí)峁┮环N日志信息輸出控制方法及裝置,技術(shù) 方案如下:

一種日志信息輸出控制方法,該方法包括:

接收業(yè)務(wù)處理請(qǐng)求;

判斷所述業(yè)務(wù)處理請(qǐng)求中是否攜帶測(cè)試業(yè)務(wù)標(biāo)識(shí);

如果是,則在對(duì)應(yīng)于所述業(yè)務(wù)處理請(qǐng)求的本次業(yè)務(wù)處理過(guò)程中,按照預(yù)設(shè)的測(cè)試業(yè)務(wù)所需級(jí)別對(duì)日志信息進(jìn)行輸出;

否則,在本次業(yè)務(wù)處理過(guò)程中,按照默認(rèn)的輸出級(jí)別配置對(duì)日志信息進(jìn)行輸出。

一種日志信息輸出控制裝置,該裝置包括:

業(yè)務(wù)請(qǐng)求接收模塊,用于接收業(yè)務(wù)處理請(qǐng)求;

業(yè)務(wù)類(lèi)型識(shí)別模塊,用于判斷所述業(yè)務(wù)處理請(qǐng)求中是否攜帶測(cè)試業(yè)務(wù)標(biāo)識(shí);

日志信息輸出模塊,用于在所述業(yè)務(wù)處理請(qǐng)求中攜帶測(cè)試業(yè)務(wù)標(biāo)識(shí)的情況下,在對(duì)應(yīng)于所述業(yè)務(wù)處理請(qǐng)求的本次業(yè)務(wù)處理過(guò)程中,按照預(yù)設(shè)的測(cè)試業(yè)務(wù)所需級(jí)別對(duì)日志信息進(jìn)行輸出;否則,在本次業(yè)務(wù)處理過(guò)程中,按照默認(rèn)的輸出級(jí)別配置對(duì)日志信息進(jìn)行輸出。

應(yīng)用本申請(qǐng)所提供的技術(shù)方案,在系統(tǒng)維護(hù)人員發(fā)出的測(cè)試業(yè)務(wù)請(qǐng)求中添加一個(gè)特殊標(biāo)識(shí),對(duì)于系統(tǒng)而言,能夠根據(jù)業(yè)務(wù)處理請(qǐng)求中是否攜帶該標(biāo)識(shí)來(lái)識(shí)別當(dāng)前要處理的業(yè)務(wù)是正常的線上業(yè)務(wù)還是用于模擬線上環(huán)境的測(cè)試業(yè)務(wù),并且進(jìn)一步根據(jù)識(shí)別結(jié)果控制日志信息的輸出級(jí)別。與現(xiàn)有技術(shù)相比,不需要重新啟動(dòng)系統(tǒng)就可以針對(duì)不同的需求靈活控制日志信息的輸出級(jí)別。

應(yīng)當(dāng)理解的是,以上的一般描述和后文的細(xì)節(jié)描述僅是示例性和解釋性的,并不能限制本申請(qǐng)。

附圖說(shuō)明

為了更清楚地說(shuō)明本申請(qǐng)實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本申請(qǐng)中記載的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講, 還可以根據(jù)這些附圖獲得其他的附圖。

圖1是本申請(qǐng)的日志信息輸出控制方法的流程示意圖;

圖2是本申請(qǐng)的一種日志信息輸出架構(gòu)示意圖;

圖3是本申請(qǐng)的MrpLogger日志記錄器的架構(gòu)示意圖;

圖4是本申請(qǐng)的日志信息輸出控制裝置的結(jié)構(gòu)示意圖。

具體實(shí)施方式

針對(duì)現(xiàn)有技術(shù)所存在的問(wèn)題,本申請(qǐng)所提出的解決方案是,在業(yè)務(wù)請(qǐng)求中增加特定的標(biāo)識(shí)位,對(duì)于一般線上業(yè)務(wù)和用于模擬線上環(huán)境的測(cè)試業(yè)務(wù)進(jìn)行區(qū)分,這樣,系統(tǒng)在接收業(yè)務(wù)請(qǐng)求后,可以根據(jù)請(qǐng)求中的標(biāo)識(shí)位判斷出本次請(qǐng)求的業(yè)務(wù)是正常的線上業(yè)務(wù)還是測(cè)試業(yè)務(wù),然后根據(jù)判斷結(jié)果確定在本次業(yè)務(wù)的處理過(guò)程中需要輸出何種級(jí)別的日志信息。

為了使本領(lǐng)域技術(shù)人員更好地理解本申請(qǐng)中的技術(shù)方案,下面將結(jié)合本申請(qǐng)實(shí)施例中的附圖,對(duì)本申請(qǐng)實(shí)施例中的技術(shù)方案進(jìn)行詳細(xì)地描述,顯然,所描述的實(shí)施例僅僅是本申請(qǐng)一部分實(shí)施例,而不是全部的實(shí)施例。基于本申請(qǐng)中的實(shí)施例,本領(lǐng)域普通技術(shù)人員所獲得的所有其他實(shí)施例,都應(yīng)當(dāng)屬于本申請(qǐng)保護(hù)的范圍。

圖1所示,為本申請(qǐng)?zhí)峁┑娜罩拘畔⑤敵隹刂品椒ǖ牧鞒虉D,該方法可以包括以下步驟:

S101,接收業(yè)務(wù)處理請(qǐng)求;

S102,判斷所述業(yè)務(wù)處理請(qǐng)求中是否攜帶測(cè)試業(yè)務(wù)標(biāo)識(shí),如果是則執(zhí)行S103,否則執(zhí)行S104;

S103,則在本次業(yè)務(wù)處理過(guò)程中,按照預(yù)設(shè)的測(cè)試業(yè)務(wù)所需級(jí)別對(duì)日志信息進(jìn)行輸出;

S104,否則,在本次業(yè)務(wù)處理過(guò)程中,按照默認(rèn)的輸出級(jí)別配置對(duì)日志信息進(jìn)行輸出。

為了便于描述,在后文中將系統(tǒng)正常運(yùn)行時(shí)所處理的一般業(yè)務(wù)稱為“非測(cè) 試業(yè)務(wù)”,根據(jù)本申請(qǐng)方案,為了對(duì)非測(cè)試業(yè)務(wù)和用于模擬線上環(huán)境的測(cè)試業(yè)務(wù)進(jìn)行區(qū)分,采用在業(yè)務(wù)請(qǐng)求中增加特定標(biāo)識(shí)位的方式。為了盡量減少對(duì)原有系統(tǒng)的改動(dòng),可以在僅在測(cè)試業(yè)務(wù)請(qǐng)求中增加一個(gè)特定標(biāo)識(shí)位,然后為系統(tǒng)的日志輸出裝置增加解析業(yè)務(wù)請(qǐng)求并識(shí)別該標(biāo)識(shí)位的功能。當(dāng)然,也可以在非測(cè)試業(yè)務(wù)請(qǐng)求和測(cè)試業(yè)務(wù)請(qǐng)求中統(tǒng)一增加標(biāo)識(shí)位,通過(guò)賦予不同標(biāo)識(shí)位取值的方式來(lái)實(shí)現(xiàn)對(duì)兩種業(yè)務(wù)請(qǐng)求的區(qū)分,本申請(qǐng)對(duì)此并不需要進(jìn)行限定。

系統(tǒng)在接收到一次業(yè)務(wù)處理請(qǐng)求后,在處理對(duì)應(yīng)的業(yè)務(wù)之前,先對(duì)業(yè)務(wù)處理請(qǐng)求進(jìn)行解析,根據(jù)該請(qǐng)求中是否攜帶測(cè)試業(yè)務(wù)標(biāo)識(shí),判斷本次需要處理的業(yè)務(wù)是測(cè)試業(yè)務(wù)還是一般線上業(yè)務(wù)。如果是非測(cè)試業(yè)務(wù),則在后續(xù)處理本次業(yè)務(wù)的過(guò)程中,按照系統(tǒng)默認(rèn)的輸出級(jí)別配置對(duì)日志信息進(jìn)行輸出,如果是測(cè)試業(yè)務(wù),則在后續(xù)處理本次業(yè)務(wù)的過(guò)程中,按照測(cè)試業(yè)務(wù)所需的級(jí)別對(duì)日志信息進(jìn)行輸出。

例如,系統(tǒng)采用包含debug、info、warn和error的四級(jí)日志信息分類(lèi)體系,在系統(tǒng)正常運(yùn)行期間,默認(rèn)的配置是僅輸出warn及以上級(jí)別的日志信息,為了滿足測(cè)試需求,可以配置為對(duì)于測(cè)試業(yè)務(wù)輸出全部級(jí)別的日志信息。這樣,系統(tǒng)接收到業(yè)務(wù)處理請(qǐng)求后,如果判斷出本次業(yè)務(wù)為非測(cè)試業(yè)務(wù),則輸出warn和error級(jí)別的日志信息,如果判斷出本次業(yè)務(wù)為測(cè)試業(yè)務(wù),則輸出debug、info、warn和error級(jí)別的日志信息。

可以理解的是,如果還有進(jìn)一步細(xì)化的多種日志信息輸出級(jí)別控制需求,可以使用多個(gè)標(biāo)記位取值,例如,規(guī)定標(biāo)識(shí)位取1時(shí),輸出info、warn和error三種級(jí)別的日志信息,標(biāo)識(shí)位取2時(shí),輸出debug、info、warn和error四種級(jí)別的日志信息,等等。當(dāng)然,也可以在業(yè)務(wù)請(qǐng)求中另行增加新的標(biāo)識(shí)位以實(shí)現(xiàn)上述功能,本申請(qǐng)對(duì)此并不需要進(jìn)行限定。

根據(jù)本申請(qǐng)方案,可以使用多種方式實(shí)現(xiàn)日志信息的輸出。例如,按照輸出時(shí)機(jī)的不同,可以分為實(shí)時(shí)輸出和延時(shí)輸出;而按照輸出形式的不同,又可以分為將日志信息寫(xiě)入日志文件、在命令行控制臺(tái)進(jìn)行顯示輸出、在網(wǎng)頁(yè)進(jìn)行顯示輸出等。對(duì)于輸出方式的控制,可以使用系統(tǒng)默認(rèn)的方式,也可以在業(yè)務(wù) 處理請(qǐng)求中進(jìn)一步增加一個(gè)輸出方式標(biāo)識(shí)位,利用不同的數(shù)值代表不同的日志信息輸出方式,例如以0代表實(shí)時(shí)輸出、1代表延時(shí)輸出,等等。用戶在需要對(duì)系統(tǒng)進(jìn)行測(cè)試時(shí),可以手動(dòng)選擇所期望的日志信息輸出方式,在生成測(cè)試業(yè)務(wù)處理請(qǐng)求時(shí),會(huì)根據(jù)用戶的選擇在請(qǐng)求的輸出方式標(biāo)識(shí)位寫(xiě)入不同的數(shù)值,以便系統(tǒng)進(jìn)行區(qū)分。

在需要對(duì)日志信息進(jìn)行延時(shí)輸出時(shí),可以預(yù)先分配一部分緩存空間用于存儲(chǔ)所輸出的日志信息,對(duì)于已經(jīng)寫(xiě)入緩存的日志信息,可以采用周期性取出的方式,也可以采用事件觸發(fā)取出的方式,例如在業(yè)務(wù)請(qǐng)求處理完成后取出、在緩存的中的日志信息達(dá)到一定數(shù)值后取出、根據(jù)用戶的手動(dòng)觸發(fā)操作從緩存取出,等等。根據(jù)實(shí)際需求,從緩存中取出的日志信息后,進(jìn)一步的處理方式可以是直接做顯示輸出,或者寫(xiě)入日志文件等等,對(duì)從緩存中所取出的日志信息處理完畢后,可以將這部分日志信息從緩存中清除。

圖2所示,為本申請(qǐng)?zhí)峁┑囊环N日志信息輸出控制架構(gòu)示意圖,下面分別對(duì)各個(gè)部分進(jìn)行說(shuō)明:

Thread Local通道容器:是預(yù)先劃分出的緩存空間,用于臨時(shí)存放輸出的日志信息,并且根據(jù)用戶的手動(dòng)操作從緩存中取出日志信息在網(wǎng)頁(yè)控制臺(tái)頁(yè)面上進(jìn)行顯示。

通道標(biāo)記位過(guò)濾:是Thread Local通道容器的開(kāi)關(guān),當(dāng)上層有日志信息輸出時(shí),根據(jù)該標(biāo)記檢測(cè)Thread Local通道容器是否開(kāi)啟,如果開(kāi)啟則將日志信息輸出到Thread Local通道容器中,否則會(huì)忽略此次日志信息輸出操作。

通道統(tǒng)一訪問(wèn)接口:底層存儲(chǔ)容器暴露給上層日志信息輸出組件的統(tǒng)一接口。

通用接口、Debug Trace Appender輸出器和MrpLogger是三種輸出組件,三種輸出組件均可以輸出日志信息,區(qū)別僅在于使用方式。

MrpLogger日志記錄器:如圖3所示,MrpLogger包含兩個(gè)日志記錄體系的日志記錄器,記為L(zhǎng)ogA和LogB。其中LogA是處理測(cè)試業(yè)務(wù)時(shí)所使用的記錄器,對(duì)應(yīng)的日志輸出位置為Debug Trace Appender輸出器,最終的輸出方式為根 據(jù)用戶的操作在網(wǎng)頁(yè)控制臺(tái)頁(yè)面進(jìn)行顯示日志信息,LogB是處理非測(cè)試業(yè)務(wù)時(shí)所使用的記錄器,對(duì)應(yīng)的日志輸出方式為實(shí)時(shí)寫(xiě)入日志文件或?qū)崟r(shí)在命令行控制臺(tái)進(jìn)行顯示輸出。

Debug Trace Appender輸出器:具有兩種功能:一方面,可以作為MrpLogger日志記錄器的一個(gè)輸出位置組件,配合MrpLogger中的LogA將更為豐富日志信息輸出到網(wǎng)頁(yè)控制臺(tái)頁(yè)面;另一方面,當(dāng)執(zhí)行非測(cè)試業(yè)務(wù)時(shí),可以將默認(rèn)級(jí)別的日志信息輸出到日志文件。

通用接口:既可以用于輸出非測(cè)試業(yè)務(wù)對(duì)應(yīng)的默認(rèn)級(jí)別日志信息,也可以用于輸出測(cè)試業(yè)務(wù)對(duì)應(yīng)的更為豐富日志信息,輸出的方式僅支持在網(wǎng)頁(yè)控制臺(tái)頁(yè)面進(jìn)行顯示。

根據(jù)上述架構(gòu),用戶在需要對(duì)系統(tǒng)進(jìn)行測(cè)試時(shí)、并且希望在網(wǎng)頁(yè)控制臺(tái)頁(yè)面看到日志信息時(shí),首先通過(guò)操作打開(kāi)通道標(biāo)記位過(guò)濾開(kāi)關(guān),然后發(fā)出測(cè)試業(yè)務(wù)處理請(qǐng)求,該請(qǐng)求中攜帶測(cè)試業(yè)務(wù)標(biāo)識(shí),系統(tǒng)接收到該請(qǐng)求后,根據(jù)標(biāo)識(shí)確定該請(qǐng)求屬于測(cè)試業(yè)務(wù)請(qǐng)求。同時(shí),根據(jù)圖2所示出的架構(gòu),根據(jù)該標(biāo)識(shí)還能夠進(jìn)一步確定輸出方式為網(wǎng)頁(yè)控制臺(tái)頁(yè)面進(jìn)行顯示。在本次業(yè)務(wù)的后續(xù)執(zhí)行過(guò)程中,系統(tǒng)按照測(cè)試業(yè)務(wù)的需求輸出更為豐富的日志信息至Thread Local通道容器。當(dāng)請(qǐng)求處理結(jié)束時(shí),系統(tǒng)從Thread Local通道容器取出已緩存的日志信息,并將日志通過(guò)http協(xié)議傳輸?shù)骄W(wǎng)頁(yè)控制臺(tái)頁(yè)面顯示,并且清除Thread Local通道容器中緩存的內(nèi)容和關(guān)閉通道標(biāo)記位過(guò)濾開(kāi)關(guān)。

需要說(shuō)明的是,圖2所示的架構(gòu)僅是本申請(qǐng)日志輸出控制方案的一種具體實(shí)施方式,并不應(yīng)理解為對(duì)本申請(qǐng)方案的限定。

相應(yīng)于上述方法實(shí)施例,本申請(qǐng)還提供一種日志信息輸出控制裝置,參見(jiàn)圖4所示,該裝置可以包括:

業(yè)務(wù)請(qǐng)求接收模塊110,用于接收業(yè)務(wù)處理請(qǐng)求;

業(yè)務(wù)類(lèi)型識(shí)別模塊120,用于判斷業(yè)務(wù)處理請(qǐng)求中是否攜帶測(cè)試業(yè)務(wù)標(biāo)識(shí);

日志信息輸出模塊130,用于在所述業(yè)務(wù)處理請(qǐng)求中攜帶測(cè)試業(yè)務(wù)標(biāo)識(shí)的情況下,在對(duì)應(yīng)于業(yè)務(wù)處理請(qǐng)求的本次業(yè)務(wù)處理過(guò)程中,按照預(yù)設(shè)的測(cè)試業(yè)務(wù)所 需級(jí)別對(duì)日志信息進(jìn)行輸出;否則,在本次業(yè)務(wù)處理過(guò)程中,按照默認(rèn)的輸出級(jí)別配置對(duì)日志信息進(jìn)行輸出。

在本申請(qǐng)的一種具體實(shí)施方式中,業(yè)務(wù)處理請(qǐng)求中還攜帶日志信息輸出方式標(biāo)識(shí);日志信息輸出模塊130可以具體用于:根據(jù)日志信息輸出方式標(biāo)識(shí),控制本次業(yè)務(wù)處理過(guò)程中的日志信息輸出方式。

在本申請(qǐng)的一種具體實(shí)施方式中,日志信息輸出模塊130對(duì)日志信息進(jìn)行輸出的方式可以包括:

將日志信息寫(xiě)入預(yù)設(shè)的緩存位置,或

對(duì)日志信息進(jìn)行實(shí)時(shí)顯示輸出或?qū)崟r(shí)寫(xiě)入日志文件。

在本申請(qǐng)的一種具體實(shí)施方式中,日志信息輸出模塊130還可以用于:

將日志信息寫(xiě)入預(yù)設(shè)的緩存位置后,根據(jù)預(yù)設(shè)的取出條件,對(duì)緩存中的日志信息進(jìn)行顯示輸出或?qū)懭肴罩疚募?/p>

在本申請(qǐng)的一種具體實(shí)施方式中,日志信息輸出模塊130還可以用于:

將已進(jìn)行顯示輸出或已寫(xiě)入日志文件日志的信息從緩存中清除。

上述裝置中各個(gè)模塊的功能和作用的實(shí)現(xiàn)過(guò)程具體詳見(jiàn)上述方法中對(duì)應(yīng)步驟的實(shí)現(xiàn)過(guò)程,在此不再贅述。

通過(guò)以上的實(shí)施方式的描述可知,本領(lǐng)域的技術(shù)人員可以清楚地了解到本申請(qǐng)可借助軟件加必需的通用硬件平臺(tái)的方式來(lái)實(shí)現(xiàn)?;谶@樣的理解,本申請(qǐng)的技術(shù)方案本質(zhì)上或者說(shuō)對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來(lái),該計(jì)算機(jī)軟件產(chǎn)品可以存儲(chǔ)在存儲(chǔ)介質(zhì)中,如ROM/RAM、磁碟、光盤(pán)等,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本申請(qǐng)各個(gè)實(shí)施例或者實(shí)施例的某些部分所述的方法。

本說(shuō)明書(shū)中的各個(gè)實(shí)施例均采用遞進(jìn)的方式描述,各個(gè)實(shí)施例之間相同相似的部分互相參見(jiàn)即可,每個(gè)實(shí)施例重點(diǎn)說(shuō)明的都是與其他實(shí)施例的不同之處。尤其,對(duì)于裝置實(shí)施例而言,由于其基本相似于方法實(shí)施例,所以描述得比較簡(jiǎn)單,相關(guān)之處參見(jiàn)方法實(shí)施例的部分說(shuō)明即可。以上所描述的裝置實(shí)施例僅僅是示意性的,其中所述作為分離部件說(shuō)明的模塊可以是或者也可以不是物理 上分開(kāi)的,在實(shí)施本申請(qǐng)方案時(shí)可以把各模塊的功能在同一個(gè)或多個(gè)軟件和/或硬件中實(shí)現(xiàn)。也可以根據(jù)實(shí)際的需要選擇其中的部分或者全部模塊來(lái)實(shí)現(xiàn)本實(shí)施例方案的目的。本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性勞動(dòng)的情況下,即可以理解并實(shí)施。

以上所述僅是本申請(qǐng)的具體實(shí)施方式,應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),在不脫離本申請(qǐng)?jiān)淼那疤嵯拢€可以做出若干改進(jìn)和潤(rùn)飾,這些改進(jìn)和潤(rùn)飾也應(yīng)視為本申請(qǐng)的保護(hù)范圍。

當(dāng)前第1頁(yè)1 2 3 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1