欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

云計算系統(tǒng)中處理日志的方法和裝置與流程

文檔序號:11388780閱讀:239來源:國知局
云計算系統(tǒng)中處理日志的方法和裝置與流程

本發(fā)明涉及云計算領(lǐng)域,并且更具體地,涉及云計算系統(tǒng)中處理日志的方法和裝置。



背景技術(shù):

日志的收集和轉(zhuǎn)發(fā)是云計算系統(tǒng)必不可少的基本功能之一。平臺即服務(wù)(platformasaservice,paas)云計算系統(tǒng)會部署成千上萬的虛擬機(virtualmachine,vm)或容器(container),并供用戶在paas云計算系統(tǒng)上發(fā)布應(yīng)用程序(application,app)。所有這些vm、容器及app在運行的過程中都會產(chǎn)生大量的日志,并被收集傳輸?shù)饺罩咎幚砗笈_做統(tǒng)一的存儲和分析。在典型的分布式云計算系統(tǒng)中,vm、容器及app的數(shù)量非常多,并會產(chǎn)生海量的日志消息,而這些日志消息對于運維以及問題的排查診斷有著重要的意義。如何有效的處理這些海量日志是一個挑戰(zhàn)性的任務(wù)。

現(xiàn)有技術(shù)中,所有的日志收集轉(zhuǎn)發(fā)系統(tǒng)都只是簡單的解決收集轉(zhuǎn)發(fā)工作,在應(yīng)對大流量日志的場景下,一般都只是維護一個簡單的單向隊列(firstinfirstout,fifo),按照日志產(chǎn)生的時序?qū)⑺腥罩就ㄟ^單向隊列發(fā)送出去。當(dāng)隊列滿了以后,采取的策略一般是堵塞日志的收集,只有之前堆積的日志都已經(jīng)處理結(jié)束之后新產(chǎn)生的日志才能得到處理。但是,新產(chǎn)生的日志堆積不上報的方式,會使得日志的實時性得不到保障。



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

本發(fā)明的實施例提供了一種云計算系統(tǒng)中處理日志的方法和裝置,能夠提高日志的實時性。

第一方面,提供了一種云計算系統(tǒng)中處理日志的方法,該方法包括:獲取部署在云計算系統(tǒng)中的應(yīng)用app產(chǎn)生的日志的當(dāng)前的流量速率信息;根據(jù)流量速率信息和預(yù)設(shè)的流量速率閾值判斷app的當(dāng)前的日志流量速率是否大于或等于流量速率閾值;當(dāng)日志流量速率大于或等于流量速率閾值時,以 流量速率閾值向云計算系統(tǒng)中的日志收集服務(wù)器發(fā)送獲取到的app的日志,并將暫時未發(fā)送的日志緩存在緩存設(shè)備中。

根據(jù)本發(fā)明實施例的云計算系統(tǒng)中處理日志的方法,通過設(shè)置日志流量速率閾值,對app產(chǎn)生的日志進行流量控制,使每個app產(chǎn)生的日志流量均以不超過閾值的流量速率發(fā)送至日志收集服務(wù)器。這樣,避免了在一些突發(fā)全局性的大流量場景下,部分app產(chǎn)生的大量日志占用了服務(wù)器資源,從而造成的擁塞。同時,保證了每個app新產(chǎn)生的日志也能至少部分實時提交到日志收集服務(wù)器,而不是被直接丟棄或是堆積在日志產(chǎn)生服務(wù)器很久后才能發(fā)送到日志收集服務(wù)器端,從而能夠提高日志的實時性。

另一方面,如果按照傳統(tǒng)的僅按照時序管理日志的方法,當(dāng)由于app異?;驉阂鈇pp產(chǎn)生海量日志時,容易主動或被動地攻擊云平臺服務(wù)器,對云平臺計算以及存儲資源的造成瞬時沖擊,導(dǎo)致嚴重后果。本發(fā)明實施例的處理日志的方法為每個app設(shè)置日志流量速率閾值,能夠有效阻止這種海量日志的沖擊。

結(jié)合第一方面,在第一方面的第一種可能的實現(xiàn)方式中,該方法還可以包括:當(dāng)日志流量速率小于流量速率閾值時,可以以日志流量速率向日志收集服務(wù)器發(fā)送獲取到的app的日志,并以空閑流量速率向日志收集服務(wù)器發(fā)送緩存設(shè)備緩存的app的日志,其中空閑流量速率小于或等于流量速率閾值與日志流量速率之差。

結(jié)合第一方面的上述可能的實現(xiàn)方式,在第一方面的第二種可能的實現(xiàn)方式中,流量速率信息可以為app的日志的總流量速率,總流量速率為單位時間內(nèi)獲取到的app日志的流量,流量速率閾值可以為app的日志的總流量速率的上限值,其中,根據(jù)流量速率信息和預(yù)設(shè)的流量速率閾值判斷app的當(dāng)前的日志流量速率是否大于或等于流量速率閾值,包括:根據(jù)總流量速率和總流量速率的上限值,判斷日志流量速率是否大于或等于流量速率閾值;當(dāng)日志流量速率大于或等于流量速率閾值時,以流量速率閾值向云計算系統(tǒng)中的日志收集服務(wù)器發(fā)送獲取到的app的日志,并將暫時未發(fā)送的日志緩存在緩存設(shè)備中,包括:當(dāng)總流量速率大于或等于總流量速率的上限值的持續(xù)時間大于第一時間段時,以總流量速率的上限值向日志收集服務(wù)器發(fā)送獲取到的app的日志,并將暫時未發(fā)送的日志緩存在緩存設(shè)備中。

結(jié)合第一方面的上述可能的實現(xiàn)方式,在第一方面的第三種可能的實現(xiàn) 方式中,流量速率信息可以為app的用戶平均流量速率,用戶平均流量速率為app的日志的總流量速率與app的當(dāng)前用戶訪問量的比值,流量速率閾值可以為app的用戶平均流量速率的上限值,其中,根據(jù)流量速率信息和預(yù)設(shè)的流量速率閾值判斷app的當(dāng)前的日志流量速率是否大于或等于流量速率閾值,包括:根據(jù)總流量速率與當(dāng)前用戶訪問量的比值和用戶平均流量速率的上限值,判斷日志流量速率是否大于或等于流量速率閾值;當(dāng)日志流量速率大于或等于流量速率閾值時,以流量速率閾值向云計算系統(tǒng)中的日志收集服務(wù)器發(fā)送獲取到的app的日志,并將暫時未發(fā)送的日志緩存在緩存設(shè)備中,包括:當(dāng)用戶平均流量速率大于或等于用戶平均流量速率的上限值的持續(xù)時間大于第二時間段時,以第一速率向日志收集服務(wù)器發(fā)送獲取到的app的日志,并將暫時未發(fā)送的日志緩存在緩存設(shè)備中,第一速率為用戶平均流量速率的上限值與當(dāng)前用戶訪問量的乘積。

結(jié)合第一方面的上述可能的實現(xiàn)方式,在第一方面的第四種可能的實現(xiàn)方式中,流量速率信息可以包括app的日志的總流量速率以及app的當(dāng)前用戶訪問量,其中總流量速率為單位時間內(nèi)獲取到的app日志的流量,流量速率閾值可以包括app的日志的總流量速率的上限值和app的用戶平均流量速率的上限值,其中,根據(jù)流量速率信息和預(yù)設(shè)的流量速率閾值判斷app的當(dāng)前的日志流量速率是否大于或等于流量速率閾值,包括:根據(jù)總流量速率和總流量速率的,以及總流量速率與當(dāng)前用戶訪問量的比值與用戶平均流量速率的上限值,判斷日志流量速率是否大于或等于流量速率閾值;當(dāng)日志流量速率大于或等于流量速率閾值時,以流量速率閾值向云計算系統(tǒng)中的日志收集服務(wù)器發(fā)送獲取到的app的日志,并將暫時未發(fā)送的日志緩存在緩存設(shè)備中,包括:當(dāng)總流量速率大于或等于總流量速率的上限值的持續(xù)時間大于第一時間段,且總流量速率與當(dāng)前用戶訪問量的比值大于或等于用戶平均流量速率的上限值的持續(xù)時間大于第二時間段時,以第二速率向日志收集服務(wù)器發(fā)送獲取到的app的日志,并將暫時未發(fā)送的日志緩存在緩存設(shè)備中,第二速率為總流量速率的上限值,和用戶平均流量速率的上限值與當(dāng)前用戶訪問量的乘積兩者中較大值。

結(jié)合第一方面的上述可能的實現(xiàn)方式,在第一方面的第五種可能的實現(xiàn)方式中,當(dāng)app的日志流量速率大于流量速率閾值時,向日志收集服務(wù)器發(fā)送日志流量超限警告消息。

上述方式克服了日志流量速率大于或等于日志流量速率閾值時缺乏通知和告警機制的問題。通過采用上述方式,運維人員或相關(guān)人員可以及時知道當(dāng)前的日志流量速率超出系統(tǒng)處理能力,從而采取相應(yīng)措施進行處理,進而可以更好地提升云平臺的運維能力。

結(jié)合第一方面的上述可能的實現(xiàn)方式,在第一方面的第六種可能的實現(xiàn)方式中,當(dāng)以流量速率閾值向云計算系統(tǒng)中的日志收集服務(wù)器發(fā)送獲取到的app的日志時,可先以流量速率閾值緩存app的日志至緩存隊列,然后從緩存隊列發(fā)送緩存的app的日志至日志收集服務(wù)器。

第二方面,本發(fā)明提供了一種云計算系統(tǒng)中處理日志的裝置,該裝置包括獲取單元,用于獲取部署在云計算系統(tǒng)中的應(yīng)用app產(chǎn)生的日志的當(dāng)前的流量速率信息;判斷單元,用于根據(jù)獲取單元獲取的流量速率信息和預(yù)設(shè)的流量速率閾值判斷app的當(dāng)前的日志流量速率是否大于或等于流量速率閾值;處理單元,用于當(dāng)日志流量速率大于或等于流量速率閾值時,以流量速率閾值向云計算系統(tǒng)中的日志收集服務(wù)器發(fā)送獲取到的app的日志,并將暫時未發(fā)送的日志緩存在緩存設(shè)備中。

根據(jù)本發(fā)明實施例的云計算系統(tǒng)中處理日志的方法,通過設(shè)置日志流量速率閾值,對app產(chǎn)生的日志進行流量控制,使每個app產(chǎn)生的日志流量均以不超過閾值的流量速率發(fā)送至日志收集服務(wù)器。這樣,避免了在一些突發(fā)全局性的大流量場景下,部分app產(chǎn)生的大量日志占用了服務(wù)器資源,從而造成的擁塞。同時,保證了每個app新產(chǎn)生的日志也能至少部分實時提交到日志收集服務(wù)器,而不是被直接丟棄或是堆積在日志產(chǎn)生服務(wù)器很久后才能發(fā)送到日志收集服務(wù)器端,從而能夠提高日志的實時性。

另一方面,如果按照傳統(tǒng)的僅按照時序管理日志的方法,當(dāng)由于app異?;驉阂鈇pp產(chǎn)生海量日志時,容易主動或被動地攻擊云平臺服務(wù)器,對云平臺計算以及存儲資源的造成瞬時沖擊,導(dǎo)致嚴重后果。本發(fā)明實施例的處理日志的方法為每個app設(shè)置日志流量速率閾值,能夠有效阻止這種海量日志的沖擊。

第二方面的裝置可以包括用于執(zhí)行第一方面或第一方面的任一可能的實現(xiàn)方式中的方法的單元,用于執(zhí)行第一方面或第一方面的任一方面的可能實現(xiàn)方式中的方法。

第三方面,本發(fā)明提供了一種云計算系統(tǒng)中處理日志的裝置,包括發(fā)送 器、接收器、處理器,存儲器和總線系統(tǒng)。其中,該接收器、該發(fā)送器、該存儲器和該處理器通過該總線系統(tǒng)相連,該存儲器用于存儲指令,該處理器用于執(zhí)行存儲器存儲的指令,以控制接收器接收信號,并控制發(fā)送器發(fā)送信號,并且當(dāng)處理器執(zhí)行該存儲器存儲的指令時,該執(zhí)行使得處理器執(zhí)行第一方面或第一方面的任意可能的實現(xiàn)方式中的方法。

第四方面,本發(fā)明提供了一種計算機可讀介質(zhì),用于存儲計算機程序,該計算機程序包括用于執(zhí)行第一方面或第一方面的任意可能的實現(xiàn)方式中的方法的指令。

根據(jù)本發(fā)明實施例的云計算系統(tǒng)中處理日志的方法,通過設(shè)置日志流量速率閾值,對app產(chǎn)生的日志進行流量控制,使每個app產(chǎn)生的日志流量均以不超過閾值的流量速率發(fā)送至日志收集服務(wù)器。這樣,避免了在一些突發(fā)全局性的大流量場景下,部分app產(chǎn)生的大量日志占用了服務(wù)器資源,從而造成的擁塞。同時,保證了每個app新產(chǎn)生的日志也能至少部分實時提交到日志收集服務(wù)器,而不是被直接丟棄或是堆積在日志產(chǎn)生服務(wù)器很久后才能發(fā)送到日志收集服務(wù)器端,從而能夠提高日志的實時性。

另一方面,如果按照傳統(tǒng)的僅按照時序管理日志的方法,當(dāng)由于app異常或惡意app產(chǎn)生海量日志時,容易主動或被動地攻擊云平臺服務(wù)器,對云平臺計算以及存儲資源的造成瞬時沖擊,導(dǎo)致嚴重后果。本發(fā)明實施例的處理日志的方法為每個app設(shè)置日志流量速率閾值,能夠有效阻止這種海量日志的沖擊。

附圖說明

為了更清楚地說明本發(fā)明實施例的技術(shù)方案,下面將對本發(fā)明實施例中所需要使用的附圖作簡單地介紹,顯而易見地,下面所描述的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。

圖1是本發(fā)明一個實施例的云計算系統(tǒng)的架構(gòu)示意圖。

圖2是本發(fā)明實施例的云計算系統(tǒng)中處理日志的方法的示意性流程圖。

圖3是本發(fā)明實施例的云計算系統(tǒng)中處理日志的裝置的示意性框圖。

圖4是本發(fā)明另一實施例的云計算系統(tǒng)中處理日志的裝置的示意性框圖。

具體實施方式

下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。

圖1示出了本發(fā)明一個實施例的云計算系統(tǒng)的架構(gòu)示意圖。結(jié)合圖1,簡要說明日志的產(chǎn)生和處理過程。首先,用戶通過手機或其他互聯(lián)網(wǎng)終端(如筆記本、智能手環(huán)等)訪問paas云計算系統(tǒng)上部署的app。在此過程中,app會產(chǎn)生日志(如訪問日志和應(yīng)用日志)。這些日志會記錄到paas云計算系統(tǒng)中的日志產(chǎn)生服務(wù)器的文件上,并被日志產(chǎn)生服務(wù)器中的日志收集轉(zhuǎn)發(fā)模塊處理,發(fā)往日志收集服務(wù)器的日志監(jiān)控模塊。最后,由日志監(jiān)控模塊統(tǒng)一處理這些日志,進行后續(xù)的實時分析以及策略控制。本發(fā)明的云計算系統(tǒng)中處理日志方法可以由日志收集轉(zhuǎn)發(fā)模塊執(zhí)行,該日志收集模塊具有日志收集和轉(zhuǎn)發(fā)功能。

圖2是本發(fā)明一個實施例的云計算系統(tǒng)中處理日志的方法的流程圖。該方法可以應(yīng)用于圖1所示的paas云計算系統(tǒng),還可以應(yīng)用于基礎(chǔ)設(shè)施即服務(wù)(infrastructureasaservice,iaas)云計算系統(tǒng),本發(fā)明實施例對該方法的應(yīng)用場景不做限定。

s110,獲取部署在云計算系統(tǒng)中的app產(chǎn)生的日志當(dāng)前的流量速率信息。

app部署在云計算系統(tǒng)中,用戶訪問app時會產(chǎn)生日志。云計算系統(tǒng)中的日志收集轉(zhuǎn)發(fā)模塊可以獲取日志的流量速率信息。作為示例而非限定,流量速率信息可以是app的日志的瞬時流量速率,也可以是一段時間內(nèi)所有訪問該app的用戶訪問該app時產(chǎn)生的日志的平均流量。流量速率可以采用“條/秒”描述,也可以采用“mbps”描述。

s120,根據(jù)流量速率信息和預(yù)設(shè)的流量速率閾值判斷app的當(dāng)前的日志流量速率是否大于或等于流量速率閾值。

作為示例而非限定,流量速率閾值可以是app的日志的瞬時流量速率閾值,也可以是一段時間內(nèi)所有訪問該app的用戶訪問該app時產(chǎn)生的日志的平均流量的閾值。

具體地,例如,當(dāng)app的日志的瞬時流量速率大于或等于app的日志的瞬時流量速率閾值,可以認為app的當(dāng)前的日志流量速率大于或等于流量速率閾值。或者,一段時間內(nèi)所有訪問該app的用戶訪問該app時產(chǎn)生的日志的平均流量大于或等于相同時間內(nèi)所有訪問該app的用戶訪問該app時產(chǎn)生的日志的平均流量閾值,可以認為app的當(dāng)前的日志流量速率大于或等于流量速率閾值。

s130,當(dāng)日志流量速率大于或等于流量速率閾值時,以流量速率閾值向云計算系統(tǒng)中的日志收集服務(wù)器發(fā)送獲取到的app的日志,并將暫時未發(fā)送的日志緩存在緩存設(shè)備中。

根據(jù)本發(fā)明實施例的云計算系統(tǒng)中處理日志的方法,通過設(shè)置日志流量速率閾值,對app產(chǎn)生的日志進行流量控制,使每個app產(chǎn)生的日志流量均以不超過閾值的流量速率發(fā)送至日志收集服務(wù)器。這樣,避免了在一些突發(fā)全局性的大流量場景下,部分app產(chǎn)生的大量日志占用了服務(wù)器資源,從而造成的擁塞。同時,保證了每個app新產(chǎn)生的日志也能至少部分實時提交到日志收集服務(wù)器,而不是被直接丟棄或是堆積在日志產(chǎn)生服務(wù)器很久后才能發(fā)送到日志收集服務(wù)器端,從而能夠提高日志的實時性。

另一方面,如果按照傳統(tǒng)的僅按照時序管理日志的方法,當(dāng)由于app異?;驉阂鈇pp產(chǎn)生海量日志時,容易主動或被動地攻擊云平臺服務(wù)器,對云平臺計算以及存儲資源的造成瞬時沖擊,導(dǎo)致嚴重后果。本發(fā)明實施例的處理日志的方法為每個app設(shè)置日志流量速率閾值,能夠有效阻止這種海量日志的沖擊。

可選地,作為一個實施例,當(dāng)app的日志流量速率大于或等于流量速率閾值時,可以向日志收集服務(wù)器發(fā)送日志流量超限警告消息。

通過上述方式,運維人員或相關(guān)人員可以知道當(dāng)前的日志流量速率超出系統(tǒng)處理能力,從而采取相應(yīng)措施進行處理,進而可以更好地提升云平臺的運維能力。

可選地,作為一個實施例,當(dāng)日志流量速率小于流量速率閾值時,以日志流量速率向日志收集服務(wù)器發(fā)送獲取到的app的日志,并以空閑流量速率向日志收集服務(wù)器發(fā)送緩存設(shè)備緩存的app的日志,其中空閑流量速率小于或等于流量速率閾值與日志流量速率之差。

具體來說,如果當(dāng)前的日志流量速率小于流量速率閾值時,日志收集轉(zhuǎn) 發(fā)模塊可以正常處理日志,即以當(dāng)前的日志流量速率向日志收集服務(wù)器發(fā)送獲取到的app的日志。并且,此時存在空閑流量,那么日志收集轉(zhuǎn)發(fā)模塊可以以小于或者大于流量速率閾值與當(dāng)前的日志流量速率之差的速率向日志收集服務(wù)器發(fā)送之前在日志產(chǎn)生服務(wù)器的緩存設(shè)備緩存的日志。這些日志可以后續(xù)被進一步處理,做數(shù)據(jù)挖掘等,從而可以了解系統(tǒng)整體的運行情況和做問題排查,從而可以加強云平臺的運維能力。

可選地,作為一個實施例,流量速率信息可以是app的日志的總流量速率fori(以下簡稱總流量速率fori),流量速率閾值可以是app的日志的總流量速率的上限值fmax(以下簡稱上限值fmax)。那么,在s120中,可以根據(jù)總流量速率fori和上限值fmax判斷app的日志流量速率是否大于或等于流量速率閾值。此時,在s130中,當(dāng)總流量速率fori大于上限值fmax的持續(xù)時間大于第一時間段時,以上限值fmax向日志收集服務(wù)器發(fā)送獲取到的app的日志,并將暫時未發(fā)送的日志緩存在緩存設(shè)備中。

具體地,通過判斷總流量速率fori是否超過預(yù)設(shè)的上限值fmax,可以確定總流量速率fori是否超限,進而可以確定是否向日志收集服務(wù)器發(fā)送獲取到的app的所有日志。當(dāng)總流量速率fori超限時,即當(dāng)總流量速率fori大于或等于預(yù)設(shè)的上限值fmax的持續(xù)時間大于第一時間段時,可以以上限值fmax向日志收集服務(wù)器發(fā)送獲取到的app的日志,并將暫時未發(fā)送的日志緩存在緩存設(shè)備中。也就是說,只要總流量速率fori超限,僅以上限值fmax發(fā)送獲取到的app的日志,緩存未能及時發(fā)送的app的日志。

本發(fā)明實施例對第一時間段的長度不作限制。例如,第一時間段可以是30秒,也可以是10秒??蛇x地,第一時間段的長度還可以是0秒,即只要總流量速率fori在瞬間大于或等于上限值fmax,則可以認為app的日志流量速率大于或等于流量速率閾值。

在本發(fā)明實施例中,當(dāng)總流量速率fori小于上限值fmax的持續(xù)時間大于某一時間段,例如,當(dāng)總流量速率降為0.9fmax,并持續(xù)30秒,則認為日志流量速率恢復(fù)正常。應(yīng)理解,正常情況下用戶訪問app所產(chǎn)生的日志流量速率屬于正常的日志流量速率,這里所說的日志流量速率恢復(fù)正常是指相對于突發(fā)大流量的情況而言。在正常的日志流量速率情況下,系統(tǒng)的處理能力可以達到日志流量速率的要求,新產(chǎn)生的流量日志可以被及時發(fā)送至日志收集服務(wù)器端。

應(yīng)理解,上述中的“fori”、“fmax”是一種代稱,僅是為了描述方便,,并非限定。下述類似的描述也僅是一種代稱,并非限定。

可選地,作為一個實施例,流量速率信息可以是總流量速率fori與app的當(dāng)前用戶訪問量num的比值(即用戶平均流量速率fave),流量速率閾值可以是app的日志的用戶平均流量速率的上限值flpu。那么,在s120中,可以根據(jù)用戶平均流量速率fave和app的日志的用戶平均流量速率的上限值flpu(以下簡稱上限值flpu),判斷app的日志流量速率是否大于或等于流量速率閾值。此時,在s130中,當(dāng)用戶平均流量速率fave大于或等于上限值flpu的持續(xù)時間大于第二時間段時,以第一速率,即值為上限值flpu和當(dāng)前用戶訪問量num的乘積的速率,向日志收集服務(wù)器發(fā)送獲取到的app的日志,并將暫時未發(fā)送的日志緩存在緩存設(shè)備中。

具體地,通過判斷用戶平均流量速率fave是否超過預(yù)設(shè)的上限值flpu,可以確定用戶平均流量速率fave是否超限,進而可以確定是否向日志收集服務(wù)器發(fā)送獲取到的app的所有日志。當(dāng)用戶平均流量速率fave超限時,即當(dāng)用戶平均流量速率fave大于或等于上限值flpu的持續(xù)時間大于第二時間段時,可以以第一速率向日志收集服務(wù)器發(fā)送獲取到的app的日志,并將暫時未發(fā)送的日志緩存在緩存設(shè)備中。

本發(fā)明實施例對第二時間段的長度不作限制。例如,第二時間段可以是30秒,也可以是20秒??蛇x地,第一時間段的長度還可以是0秒,即只要總流量速率fori和app的當(dāng)前用戶訪問量fave的比值在瞬間大于上限值flpu,則可以認為app的日志流量速率大于或等于流量速率閾值。另外,第二時間段可以和第一時間段相同,也可以不同。

在本發(fā)明實施例中,當(dāng)總流量速率fori和app用戶訪問量num的比值小于上限值fmax的持續(xù)時間大于某一時間段,例如,當(dāng)總流量速率fori和app用戶訪問量的比值num降為0.9flpu,并持續(xù)30秒,則認為日志流量速率恢復(fù)正常。

應(yīng)理解,上述實施例中,日志轉(zhuǎn)發(fā)服務(wù)器中設(shè)置的一段時間內(nèi)可以訪問該app的最大用戶數(shù)量,以及以最大用戶數(shù)量訪問該app時可以產(chǎn)生的日志。那么,上限值flpu可以表示這段時間內(nèi)以最大用戶數(shù)量訪問該app時可以產(chǎn)生的日志的平均值。

可選地,作為一個實施例,流量速率信息可以包括,總流量速率fori, 以及總流量速率fori與app的當(dāng)前用戶訪問量num的比值(即用戶平均流量速率fave)。流量速率閾值可以包括上限值fmax,以及上限值flpu。那么,在s120中,可以結(jié)合上述總流量速率fori和上限值fmax,以及用戶平均流量速率fave與上限值flpu綜合判斷app的日志流量速率是否大于或等于流量速率閾值。此時,在s130中,當(dāng)總流量速率fori大于或等于上限值fmax的持續(xù)時間大于第三時間段,且當(dāng)用戶平均流量速率fave大于或等于上限值flpu的持續(xù)時間大于第四時間段時,以第二速率向日志收集服務(wù)器發(fā)送獲取到的app的日志,并將暫時未發(fā)送的日志緩存在緩存設(shè)備中。第二速率為總流量速率的上限值,和用戶平均流量速率的上限值與當(dāng)前用戶訪問量的乘積兩者中較大值。

例如,當(dāng)總流量速率fori大于上限值fmax,且持續(xù)了20秒,并且,此時用戶平均流量速率fave大于上限值flpu,且持續(xù)了20秒,則可以確定app的日志流量速率大于或等于流量速率閾值。此時,如果上限值flpu與app用戶訪問量的比值num的乘積大于上限值fmax,則將上限值flpu與app用戶訪問量的比值num的乘積的值稱為第二速率。并可以以第二速率向日志收集服務(wù)器發(fā)送獲取到的app的日志,并將暫時未發(fā)送的日志緩存在緩存設(shè)備中。當(dāng)然,也可以以大小為上限值fmax的速率向日志收集服務(wù)器發(fā)送獲取到的app的日志,本發(fā)明實施例對此不作限定。

應(yīng)理解,上述第三時間段和第四時間段可以與第一時間段和第二時間段相同,可以不同,本發(fā)明實施例對此不作限定。

還應(yīng)理解,在本發(fā)明實施例中,上限值flpu和上限值flpu以及類似的其他閾值可以不是固定的一個數(shù)值。在實際實施時,可以設(shè)置多個等級的閾值,以實現(xiàn)更靈活的控制策略。

本發(fā)明實施例中,可以在部署app時選擇服務(wù)質(zhì)量(qualityofservice,qos)模板,該qos模板中可以定義流量速率閾值。那么,當(dāng)app的日志流量速率大于或等于部署該app時所選用的第一qos模板的流量速率閾值時,可以將第一qos模板調(diào)整為第二qos模板。該第二qos模板的流量速率額度大于第一qos模板的流量速率額度。并且,當(dāng)app的日志流量速率下降,并小于該第二qos模板的流量速率額度時,可以將第二qos模板調(diào)整為第一qos模板。

具體來說,qos模板可以有多個,每個模板的流量速率閾值都不同,當(dāng) app的日志流量速率超過當(dāng)前qos模板的流量速率閾值時,系統(tǒng)可以自動調(diào)整qos模板,即系統(tǒng)自動調(diào)整流量速率閾值。這樣可以根據(jù)戶業(yè)務(wù)提供靈活配置qos模板的配置策略。

舉例來說,對于paas云計算系統(tǒng),paas用戶通過云計算來選擇配置qos模板,系統(tǒng)可以提供用戶初級的套餐供用戶免費使用,如果用戶的日志流量速率超過免費的額度,則通過彈性伸縮自動擴增額度;如果日志流量速率下降,則自動回到免費或是較小的qos模板額度。彈性伸縮模塊結(jié)合計費模塊,可以對用戶實現(xiàn)更靈活的使用和計費,對paas云計算系統(tǒng)也可以實現(xiàn)業(yè)務(wù)增值。

可選地,作為另一個實施例,在s130中,以流量速率閾值向云計算系統(tǒng)中的日志收集服務(wù)器發(fā)送獲取到的app的日志時,可以先以流量速率閾值緩存app的日志至緩存隊列,然后從緩存隊列發(fā)送緩存的app的日志至日志收集服務(wù)器。

具體來說,云計算系統(tǒng)可以采用雙緩存隊列,分別為正常日志發(fā)送隊列即未超出流量速率閾值日志發(fā)送隊列和超出流量速率閾值日志緩存隊列。對于正常日志,可以采取批量的方式,一次將多條日志消息存入正常日志發(fā)送隊列。正常日志發(fā)送隊列向日志收集服務(wù)器發(fā)送該日志時,也可以從正常日志發(fā)送隊列中一次發(fā)送多條日志,從而減少日志處理的等待,提高日志處理的效率和吞吐率。

上文中結(jié)合圖1和圖2,詳細描述了根據(jù)本發(fā)明實施例的云計算系統(tǒng)中處理日志的方法,下面將結(jié)合圖3,詳細描述根據(jù)本發(fā)明實施例的云計算系統(tǒng)中處理日志的裝置。

圖3示出了本發(fā)明實施例提供的云計算系統(tǒng)中處理日志的裝置200,該裝置200包括獲取單元210、判斷單元220和處理單元230。

獲取單元210,可用于獲取部署在云計算系統(tǒng)中的應(yīng)用app產(chǎn)生的當(dāng)前的日志的流量速率信息。

判斷單元220,可用于根據(jù)獲取單元獲取210獲取的流量速率信息和預(yù)設(shè)的流量速率閾值判斷app的當(dāng)前的日志流量速率是否大于或等于流量速率閾值。

處理單元230,可用于當(dāng)日志流量速率大于或等于流量速率閾值時,以流量速率閾值向云計算系統(tǒng)中的日志收集服務(wù)器發(fā)送獲取到的app的日志, 并將暫時未發(fā)送的日志緩存在緩存設(shè)備中。

根據(jù)本發(fā)明實施例的云計算系統(tǒng)中處理日志的裝置,通過設(shè)置日志流量速率閾值,對app產(chǎn)生的日志進行流量控制,使每個app產(chǎn)生的日志流量均以不超過閾值的流量速率發(fā)送至日志收集服務(wù)器。這樣,避免了在一些突發(fā)全局性的大流量場景下,部分app產(chǎn)生的大量日志占用了服務(wù)器資源,從而造成的擁塞。同時,保證了每個app新產(chǎn)生的日志也能至少部分實時提交到日志收集服務(wù)器,而不是被直接丟棄或是堆積在日志產(chǎn)生服務(wù)器很久后才能發(fā)送到日志收集服務(wù)器端,從而能夠提高日志的實時性。

另一方面,如果按照傳統(tǒng)的僅按照時序管理日志的方法,當(dāng)由于app異?;驉阂鈇pp產(chǎn)生海量日志時,容易主動或被動地攻擊云平臺服務(wù)器,對云平臺計算以及存儲資源的造成瞬時沖擊,導(dǎo)致嚴重后果。本發(fā)明實施例的處理日志的方法為每個app設(shè)置日志流量速率閾值,能夠有效阻止這種海量日志的沖擊。

可選地,作為一個實施例,處理單元230還可用于:當(dāng)app的日志流量速率超出流量速率閾值時,向日志收集服務(wù)器發(fā)送日志流量超限警告消息。這樣,運維人員或相關(guān)人員可以知道當(dāng)前的日志流量速率超出系統(tǒng)處理能力,從而采取相應(yīng)措施進行處理,進而可以更好地提升云平臺的運維能力。

可選地,作為一個實施例,處理單元230還可用于:當(dāng)所述日志流量速率小于所述流量速率閾值時,以所述日志流量速率向所述日志收集服務(wù)器發(fā)送獲取到的所述app的日志,并以空閑流量速率向所述日志收集服務(wù)器發(fā)送所述緩存設(shè)備緩存的所述app的日志,其中所述空閑流量速率小于或等于所述流量速率閾值與所述日志流量速率之差。

可選地,作為一個實施例,獲取單元210獲取的流量速率信息可以為app的日志的總流量速率fori,流量速率閾值可以為app的日志的總流量速率的上限值fmax。此時,判斷單元220可以根據(jù)app的日志的總流量速率fori和app的日志的總流量速率的上限值fmax判斷app的日志流量速率是否大于或等于流量速率閾值。處理單元230可以在當(dāng)總流量速率fori大于上限值fmax的持續(xù)時間大于第一時間段時,以總流量速率的上限值fmax向日志收集服務(wù)器發(fā)送獲取到的app的日志,并將暫時未發(fā)送的日志緩存在緩存設(shè)備中。

可選地,作為一個實施例,獲取單元210獲取的流量速率信息可以為 app的日志的總流量速率fori與app的當(dāng)前用戶訪問量num的比值(即用戶平均流量速率fave),流量速率閾值可以為app的日志的用戶平均流量速率的上限值flpu。此時,判斷單元220可以根據(jù)用戶平均流量速率fave和app的日志的用戶平均流量速率的上限值flpu,判斷app的日志流量速率是否大于或等于流量速率閾值。。處理單元230可以在當(dāng)用戶平均流量速率fave大于或等于用戶平均流量速率的上限值flpu的持續(xù)時間大于第二時間段時,以第一速率,即用戶平均流量速率的上限值flpu和當(dāng)前用戶訪問量num的乘積,向日志收集服務(wù)器發(fā)送獲取到的app的日志,并將暫時未發(fā)送的日志緩存在緩存設(shè)備中。

可選地,作為一個實施例,獲取單元210獲取的流量速率信息可以為app的日志的總流量速率fori以及用戶平均流量速率fave,流量速率閾值可以為app的日志的總流量閾值的上限值fmax和app的日志的用戶平均流量速率的上限值flpu。此時判斷單元220可以結(jié)合上述總流量速率fori和上限值fmax,以及用戶平均流量速率fave與上限值flpu綜合判斷app的日志流量速率是否大于或等于流量速率閾值。處理單元230可以在當(dāng)總流量速率fori大于或等于上限值fmax的持續(xù)時間大于第三時間段,且當(dāng)用戶平均流量速率fave大于或等于上限值flpu的持續(xù)時間大于第四時間段時,以第二速率向日志收集服務(wù)器發(fā)送獲取到的app的日志,并將暫時未發(fā)送的日志緩存在緩存設(shè)備中。第二速率為總流量速率的上限值,和用戶平均流量速率的上限值與當(dāng)前用戶訪問量的乘積兩者中較大值。

本發(fā)明實施例中,可以在部署app時選擇qos模板,該qos模板中可以定義流量速率閾值。此時,裝置200還可以包括調(diào)整單元240,可以在當(dāng)app的日志流量速率超出部署該app時所選用的第一qos模板的流量速率閾值時,將第一qos模板調(diào)整為第二qos模板。該第二qos模板的流量速率額度大于第一qos模板的流量速率額度。并且,在當(dāng)app的日志流量速率下降,并小于該第二qos模板的流量速率額度時,將第二qos模板調(diào)整為第一qos模板。

可選地,作為一個實施例,處理單元230具體可以先以流量速率閾值緩存app的日志至緩存隊列,然后從緩存隊列發(fā)送緩存的app的日志至日志收集服務(wù)器。

應(yīng)理解,這里的裝置200以功能單元的形式體現(xiàn)。這里的術(shù)語“單元” 可以指應(yīng)用特有集成電路(applicationspecificintegratedcircuit,asic)、電子電路、用于執(zhí)行一個或多個軟件或固件程序的處理器(例如共享處理器、專有處理器或組處理器等)和存儲器、合并邏輯電路和/或其它支持所描述的功能的合適組件。本領(lǐng)域技術(shù)人員可以理解,裝置200可以用于執(zhí)行上述方法實施例中的各個流程和/或步驟,為避免重復(fù),在此不再贅述。

圖4示出了本發(fā)明實施例提供的云計算系統(tǒng)中處理日志的裝置300,該裝置300包括發(fā)送器310、接收器320、處理器330、存儲器340和總線系統(tǒng)350。其中,發(fā)送器310、接收器320、處理器330和存儲器340通過總線系統(tǒng)350相連,該存儲器340用于存儲指令,該處理器330用于執(zhí)行該存儲器340存儲的指令,以控制該發(fā)送器310發(fā)送信號,并控制該接收器320接收信號。

處理器330可用于獲取部署在云計算系統(tǒng)中的應(yīng)用app產(chǎn)生的當(dāng)前的日志的流量速率信息。

處理器330還可用于根據(jù)獲取的上述流量速率信息和預(yù)設(shè)的流量速率閾值判斷app的當(dāng)前的日志流量速率是否大于或等于流量速率閾值。并當(dāng)日志流量速率大于或等于流量速率閾值時,控制發(fā)送器310以流量速率閾值向云計算系統(tǒng)中的日志收集服務(wù)器發(fā)送獲取到的app的日志,并將暫時未發(fā)送的日志緩存在緩存設(shè)備中。

根據(jù)本發(fā)明實施例的云計算系統(tǒng)中處理日志的方法,通過設(shè)置日志流量速率閾值,對app產(chǎn)生的日志進行流量控制,使每個app產(chǎn)生的日志流量均以不超過閾值的流量速率發(fā)送至日志收集服務(wù)器。這樣,避免了在一些突發(fā)全局性的大流量場景下,部分app產(chǎn)生的大量日志占用了服務(wù)器資源,從而造成的擁塞。同時,保證了每個app新產(chǎn)生的日志也能至少部分實時提交到日志收集服務(wù)器,而不是被直接丟棄或是堆積在日志產(chǎn)生服務(wù)器很久后才能發(fā)送到日志收集服務(wù)器端,從而能夠提高日志的實時性。

另一方面,如果按照傳統(tǒng)的僅按照時序管理日志的方法,當(dāng)由于app異?;驉阂鈇pp產(chǎn)生海量日志時,容易主動或被動地攻擊云平臺服務(wù)器,對云平臺計算以及存儲資源的造成瞬時沖擊,導(dǎo)致嚴重后果。本發(fā)明實施例的處理日志的方法為每個app設(shè)置日志流量速率閾值,能夠有效阻止這種海量日志的沖擊。

應(yīng)理解,裝置300可以具體為上述實施例中的裝置200,并且可以用于 執(zhí)行上述方法實施例中的各個步驟和/或流程??蛇x地,該存儲器340可以包括只讀存儲器和隨機存取存儲器,并向處理器提供指令和數(shù)據(jù)。存儲器的一部分還可以包括非易失性隨機存取存儲器。例如,存儲器還可以存儲設(shè)備類型的信息。該處理器330可以用于執(zhí)行存儲器中存儲的指令,并且當(dāng)該處理器執(zhí)行存儲器中存儲的指令時,該處理器用于執(zhí)行上述方法實施例的各個步驟和/或流程,為了簡潔,在此不再贅述。

應(yīng)理解,在本發(fā)明實施例中,該處理器可以是中央處理單元(centralprocessingunit,cpu),該處理器還可以是其他通用處理器、數(shù)字信號處理器(dsp)、專用集成電路(asic)、現(xiàn)成可編程門陣列(fpga)或者其他可編程邏輯器件、分立門或者晶體管邏輯器件、分立硬件組件等。通用處理器可以是微處理器或者該處理器也可以是任何常規(guī)的處理器等。

在實現(xiàn)過程中,上述方法的各步驟可以通過處理器中的硬件的集成邏輯電路或者軟件形式的指令完成。結(jié)合本發(fā)明實施例所公開的方法的步驟可以直接體現(xiàn)為硬件處理器執(zhí)行完成,或者用處理器中的硬件及軟件模塊組合執(zhí)行完成。軟件模塊可以位于隨機存儲器,閃存、只讀存儲器,可編程只讀存儲器或者電可擦寫可編程存儲器、寄存器等本領(lǐng)域成熟的存儲介質(zhì)中。該存儲介質(zhì)位于存儲器,處理器執(zhí)行存儲器中的指令,結(jié)合其硬件完成上述方法的步驟。為避免重復(fù),這里不再詳細描述。

本領(lǐng)域普通技術(shù)人員可以意識到,結(jié)合本文中所公開的實施例描述的各示例的單元及算法步驟,能夠以電子硬件、計算機軟件或者二者的結(jié)合來實現(xiàn),為了清楚地說明硬件和軟件的可互換性,在上述說明中已經(jīng)按照功能一般性地描述了各示例的組成及步驟。這些功能究竟以硬件還是軟件方式來執(zhí)行,取決于技術(shù)方案的特定應(yīng)用和設(shè)計約束條件。專業(yè)技術(shù)人員可以對每個特定的應(yīng)用來使用不同方法來實現(xiàn)所描述的功能,但是這種實現(xiàn)不應(yīng)認為超出本發(fā)明的范圍。

所屬領(lǐng)域的技術(shù)人員可以清楚地了解到,為了描述的方便和簡潔,上述描述的系統(tǒng)、裝置和單元的具體工作過程,可以參考前述方法實施例中的對應(yīng)過程,在此不再贅述。

在本申請所提供的幾個實施例中,應(yīng)該理解到,所揭露的系統(tǒng)、裝置和方法,可以通過其它的方式實現(xiàn)。例如,以上所描述的裝置實施例僅僅是示意性的,例如,單元的劃分,僅僅為一種邏輯功能劃分,實際實現(xiàn)時可以有 另外的劃分方式,例如多個單元或組件可以結(jié)合或者可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另外,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口、裝置或單元的間接耦合或通信連接,也可以是電的,機械的或其它的形式連接。

作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡(luò)單元上??梢愿鶕?jù)實際的需要選擇其中的部分或者全部單元來實現(xiàn)本發(fā)明實施例方案的目的。

另外,在本發(fā)明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以是兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以采用硬件的形式實現(xiàn),也可以采用軟件功能單元的形式實現(xiàn)。

通過以上的實施方式的描述,所屬領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可以用硬件實現(xiàn),或固件實現(xiàn),或它們的組合方式來實現(xiàn)。當(dāng)使用軟件實現(xiàn)時,可以將上述功能存儲在計算機可讀介質(zhì)中或作為計算機可讀介質(zhì)上的一個或多個指令或代碼進行傳輸。計算機可讀介質(zhì)包括計算機存儲介質(zhì)和通信介質(zhì),其中通信介質(zhì)包括便于從一個地方向另一個地方傳送計算機程序的任何介質(zhì)。存儲介質(zhì)可以是計算機能夠存取的任何可用介質(zhì)。以此為例但不限于:計算機可讀介質(zhì)可以包括ram、rom、eeprom、cd-rom或其他光盤存儲、磁盤存儲介質(zhì)或者其他磁存儲設(shè)備、或者能夠用于攜帶或存儲具有指令或數(shù)據(jù)結(jié)構(gòu)形式的期望的程序代碼并能夠由計算機存取的任何其他介質(zhì)。此外。任何連接可以適當(dāng)?shù)某蔀橛嬎銠C可讀介質(zhì)。例如,如果軟件是使用同軸電纜、光纖光纜、雙絞線、數(shù)字用戶線(dsl)或者諸如紅外線、無線電和微波之類的無線技術(shù)從網(wǎng)站、服務(wù)器或者其他遠程源傳輸?shù)?,那么同軸電纜、光纖光纜、雙絞線、dsl或者諸如紅外線、無線和微波之類的無線技術(shù)包括在所屬介質(zhì)的定影中。如本發(fā)明所使用的,盤(disk)和碟(disc)包括壓縮光碟(cd)、激光碟、光碟、數(shù)字通用光碟(dvd)、軟盤和藍光光碟,其中盤通常磁性的復(fù)制數(shù)據(jù),而碟則用激光來光學(xué)的復(fù)制數(shù)據(jù)。上面的組合也應(yīng)當(dāng)包括在計算機可讀介質(zhì)的保護范圍之內(nèi)。

總之,以上所述僅為本發(fā)明技術(shù)方案的較佳實施例而已,并非用于限定本發(fā)明的保護范圍。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同 替換、改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
昂仁县| 扎兰屯市| 靖西县| 社旗县| 凌云县| 桐乡市| 台东县| 岚皋县| 阜城县| 无为县| 永丰县| 江都市| 汝南县| 浦东新区| 白玉县| 军事| 新乐市| 绥德县| 思南县| 凤翔县| 宜丰县| 明溪县| 黄石市| 漳州市| 玉山县| 永春县| 伊金霍洛旗| 准格尔旗| 德格县| 广饶县| 和龙市| 信阳市| 佳木斯市| 淮南市| 内丘县| 增城市| 深水埗区| 台安县| 林甸县| 太白县| 胶南市|