孫煜華,張 雨
(廣州供電局有限公司信息中心,廣州 510620)
近年來(lái)隨著技術(shù)的發(fā)展,基于網(wǎng)絡(luò)旁路數(shù)據(jù)監(jiān)控的業(yè)務(wù)系統(tǒng)監(jiān)控方式得到了行業(yè)內(nèi)運(yùn)維者的廣泛認(rèn)可:這種方式具有不需要對(duì)業(yè)務(wù)系統(tǒng)進(jìn)行改造、無(wú)運(yùn)行風(fēng)險(xiǎn)、實(shí)時(shí)性高、部署快速等傳統(tǒng)應(yīng)用管理方案所不具備的優(yōu)勢(shì)。
業(yè)務(wù)系統(tǒng)的量化需要通過對(duì)業(yè)務(wù)指標(biāo)數(shù)據(jù)的分析來(lái)實(shí)現(xiàn)。常用的業(yè)務(wù)監(jiān)測(cè)指標(biāo)有:日均登錄用戶數(shù)、日均用戶活躍率、日均訪問量、日均業(yè)務(wù)處理數(shù)量、業(yè)務(wù)平均耗時(shí)、應(yīng)用模塊的有用性和可靠性、業(yè)務(wù)告警數(shù)等指標(biāo)。
通過監(jiān)測(cè)的指標(biāo)反映系統(tǒng)實(shí)用化程度情況,真實(shí)客觀快速梳理業(yè)務(wù)應(yīng)用組件之間的邏輯訪問關(guān)系,根據(jù)組件之間和告警的邏輯關(guān)系,自動(dòng)定位問題節(jié)點(diǎn);多維度統(tǒng)計(jì)視圖,深入分析,逐層解析問題,從統(tǒng)計(jì)數(shù)據(jù)追蹤到單筆交易,深入問題根源,有效利用現(xiàn)有的數(shù)據(jù),為高層管理決策提供服務(wù),同時(shí)也為行業(yè)的戰(zhàn)略發(fā)展目標(biāo)和市場(chǎng)策略的制定提供了依據(jù),從而提高了企業(yè)的風(fēng)險(xiǎn)控制能力和經(jīng)營(yíng)決策能力以及競(jìng)爭(zhēng)能力。
業(yè)務(wù)架構(gòu)作為電力公司企業(yè)架構(gòu)(EA)的重要組成部分,其描述了業(yè)務(wù)域、一級(jí)業(yè)務(wù)分類、二級(jí)業(yè)務(wù)分類、業(yè)務(wù)流程以及業(yè)務(wù)分類之間的協(xié)作關(guān)系、業(yè)務(wù)流程之間的協(xié)作關(guān)系,是信息化系統(tǒng)實(shí)現(xiàn)的重要參考。
電力公司業(yè)務(wù)系統(tǒng)設(shè)計(jì)遵循電力公司企業(yè)架構(gòu),系統(tǒng)業(yè)務(wù)模型、需求分析和詳細(xì)設(shè)計(jì)基本遵從了EA的業(yè)務(wù)架構(gòu),但系統(tǒng)實(shí)用化后面臨以下問題:一是應(yīng)用系統(tǒng)的最終實(shí)現(xiàn)與EA的業(yè)務(wù)架構(gòu)的映射缺少有效的版本檢測(cè)應(yīng)用;二是無(wú)法實(shí)現(xiàn)對(duì)業(yè)務(wù)系統(tǒng)各應(yīng)用模塊的實(shí)用精益化管理。業(yè)務(wù)系統(tǒng)實(shí)用精益化運(yùn)行監(jiān)測(cè)與分析對(duì)于業(yè)務(wù)系統(tǒng)持續(xù)改進(jìn)和優(yōu)化有非常重要的意義。
研究路線分兩個(gè)維度:系統(tǒng)運(yùn)行和部署維度、用戶行為以及業(yè)務(wù)邏輯維度。一是系統(tǒng)運(yùn)行和部署維度:需要收集業(yè)務(wù)部署機(jī)器的資源狀況,中間件和數(shù)據(jù)庫(kù)軟件的運(yùn)行狀態(tài),以及業(yè)務(wù)系統(tǒng)軟件部署文件的變化。二是用戶行為以及業(yè)務(wù)邏輯維度:需要從數(shù)據(jù)流量中分析和統(tǒng)計(jì)業(yè)務(wù)對(duì)象(單據(jù))的數(shù)量和狀態(tài)變化,業(yè)務(wù)平均耗時(shí)和業(yè)務(wù)環(huán)節(jié)超時(shí)數(shù)量,需要統(tǒng)計(jì)用戶登錄和退出以及各個(gè)模塊的使用狀況。
對(duì)于這兩個(gè)維度的需求,我們分別采用不同的解決方法。一是系統(tǒng)運(yùn)行和部署維度:在軟件部署和運(yùn)行的各臺(tái)機(jī)器上部署Agent服務(wù),Agent收集CPU和內(nèi)存資源消耗,中間件和數(shù)據(jù)庫(kù)運(yùn)行狀況,業(yè)務(wù)系統(tǒng)部署文件列表,數(shù)據(jù)庫(kù)Schema等數(shù)據(jù),并上報(bào)到Master服務(wù),Master服務(wù)將數(shù)據(jù)入庫(kù),并在Web頁(yè)面展示。實(shí)現(xiàn)這部分功能的軟件系統(tǒng)叫做運(yùn)行監(jiān)測(cè)子系統(tǒng)。二是用戶行為以及業(yè)務(wù)邏輯維度:使用TCP數(shù)據(jù)復(fù)制和分流的方法,將用戶訪問系統(tǒng)的數(shù)據(jù)流量導(dǎo)入到監(jiān)測(cè)系統(tǒng)中。系統(tǒng)從數(shù)據(jù)流恢復(fù)出Http日志(請(qǐng)求和響應(yīng)),進(jìn)而從Http請(qǐng)求和響應(yīng)中抽取出業(yè)務(wù)數(shù)據(jù)和用戶行為數(shù)據(jù),并將數(shù)據(jù)入庫(kù)。
(1)業(yè)務(wù)數(shù)據(jù):用戶進(jìn)行業(yè)務(wù)對(duì)象的查看和修改操作時(shí),業(yè)務(wù)數(shù)據(jù)會(huì)被包含到Http的響應(yīng)文本中。DaaS系統(tǒng)能夠從Http響應(yīng)中抽取出格式化的業(yè)務(wù)數(shù)據(jù)。
(2)用戶行為數(shù)據(jù):從Http日志中還可以抽取用戶登錄、退出以及頁(yè)面訪問等數(shù)據(jù)。這些數(shù)據(jù)可以統(tǒng)計(jì)用戶在線時(shí)間、模塊使用狀況等指標(biāo)實(shí)現(xiàn)這部分功能的軟件系統(tǒng)叫做日志分析系統(tǒng)。
系統(tǒng)由多個(gè)功能模塊組成,包括用戶日志獲取(嗅探器)、機(jī)器信息獲取(探針)、業(yè)務(wù)運(yùn)行監(jiān)測(cè)、實(shí)時(shí)日志分析、指標(biāo)統(tǒng)計(jì)和展示、報(bào)警、審計(jì),個(gè)人中心、系統(tǒng)管理。這些模塊的結(jié)構(gòu)如圖1所示:
圖1 技術(shù)架構(gòu)
系統(tǒng)硬件部署架構(gòu)采用網(wǎng)絡(luò)監(jiān)控軟件旁路模式,就是通過端口鏡像來(lái)進(jìn)行監(jiān)控。旁路監(jiān)聽的優(yōu)勢(shì)主要體現(xiàn)在:旁路部署方案是對(duì)當(dāng)前網(wǎng)絡(luò)影響最小的監(jiān)控模式;充分利用已有硬件的功能,部署方便,不會(huì)影響現(xiàn)有的網(wǎng)絡(luò)結(jié)構(gòu);不會(huì)對(duì)網(wǎng)速造成任何影響。旁路模式分析的是鏡像端口拷貝過來(lái)的數(shù)據(jù),對(duì)原始數(shù)據(jù)包不會(huì)造成延時(shí);旁路監(jiān)控設(shè)備一旦故障或者停止運(yùn)行,不會(huì)影響現(xiàn)有網(wǎng)絡(luò);旁路部署方案一樣可以對(duì)上網(wǎng)行為進(jìn)行控制。旁路監(jiān)控系統(tǒng),通過接入一個(gè)非侵入式的設(shè)備進(jìn)行監(jiān)測(cè),能在不改造原有系統(tǒng)下實(shí)現(xiàn)準(zhǔn)實(shí)時(shí),不占用生產(chǎn)環(huán)節(jié)資源,對(duì)所有時(shí)間、所有用戶和所有交易進(jìn)行監(jiān)測(cè)的能力。通過這套系統(tǒng)能建立一套有效的監(jiān)控系統(tǒng),對(duì)IT的各個(gè)系統(tǒng)進(jìn)行監(jiān)測(cè),可以把IT監(jiān)控劃分為網(wǎng)絡(luò)監(jiān)控、服務(wù)器監(jiān)控、數(shù)據(jù)庫(kù)監(jiān)控和應(yīng)用程序監(jiān)控等;實(shí)現(xiàn)對(duì)企業(yè)的業(yè)務(wù)應(yīng)用進(jìn)行監(jiān)測(cè)和優(yōu)化,提高企業(yè)應(yīng)用的可靠性和質(zhì)量,保證用戶得到良好的體驗(yàn),降低IT總擁有成本(TCO)。
采用網(wǎng)關(guān)或負(fù)載均衡等設(shè)備,從業(yè)務(wù)系統(tǒng)服務(wù)器流量入口處將服務(wù)器接收的數(shù)據(jù)全量復(fù)制,非侵入地監(jiān)控應(yīng)用系統(tǒng)的用戶訪問行為,用于精確分析用戶行為特征,為業(yè)務(wù)系統(tǒng)優(yōu)化再將TCP/IP協(xié)議數(shù)據(jù)轉(zhuǎn)換封裝成Http數(shù)據(jù)包,然后通過數(shù)據(jù)分析等工作解析出每個(gè)業(yè)務(wù)流程環(huán)節(jié)的用戶動(dòng)作,為實(shí)際應(yīng)用提供統(tǒng)計(jì)數(shù)據(jù)依據(jù),并可視化展現(xiàn)。
主要開展版本檢測(cè)報(bào)告、指標(biāo)管理、數(shù)據(jù)采集管理、實(shí)用精益化報(bào)告等方面的工作。
圖2 業(yè)務(wù)功能體系
(1)業(yè)務(wù)系統(tǒng)版本檢測(cè)。以持續(xù)掃描和探測(cè)業(yè)務(wù)系統(tǒng),獲取業(yè)務(wù)系統(tǒng)的當(dāng)前最新狀況,將業(yè)務(wù)系統(tǒng)功能設(shè)置與期望狀況之間的差異在時(shí)間維度上進(jìn)行展現(xiàn),從而可以觀察到業(yè)務(wù)系統(tǒng)建設(shè)的當(dāng)前狀況和歷史發(fā)展,為公司信息系統(tǒng)的建設(shè)和發(fā)展提供參考。
(2)業(yè)務(wù)系統(tǒng)應(yīng)用模塊實(shí)用精益化管理。隨著信息系統(tǒng)的不斷建設(shè)和發(fā)展,業(yè)務(wù)系統(tǒng)的功能越來(lái)越多。這些業(yè)務(wù)系統(tǒng)需要持續(xù)地維護(hù)和改進(jìn),以提高業(yè)務(wù)辦理的質(zhì)量。為了對(duì)業(yè)務(wù)進(jìn)行維護(hù)和改進(jìn),我們需要了解業(yè)務(wù)模塊被使用的狀況。對(duì)于被頻繁使用的模塊,需要投入更多資源去維護(hù)其運(yùn)行的穩(wěn)定性。這對(duì)于公司調(diào)度有限的開發(fā)和維護(hù)資源有重要的參考意義。
此外,各個(gè)業(yè)務(wù)模塊在被使用的過程中會(huì)持續(xù)產(chǎn)生業(yè)務(wù)相關(guān)的數(shù)據(jù),如業(yè)務(wù)流程單的創(chuàng)建、簽發(fā)、審批和實(shí)施等數(shù)據(jù)。這些業(yè)務(wù)數(shù)據(jù)一方面可以幫助發(fā)現(xiàn)業(yè)務(wù)流程的瓶頸,對(duì)于了解和改進(jìn)業(yè)務(wù)流程有非常重要的意義;另一方面,可以幫助管理者方便直接地掌握員工的辦事效率,提高管理效率。
(3)業(yè)務(wù)數(shù)據(jù)采集管理。通過對(duì)業(yè)務(wù)系統(tǒng)產(chǎn)生的網(wǎng)絡(luò)流量進(jìn)行旁路監(jiān)聽,實(shí)現(xiàn)版本特征與實(shí)用化精益化相關(guān)的業(yè)務(wù)數(shù)據(jù)的采集管理。具體來(lái)說,需要采集業(yè)務(wù)流程的狀態(tài)以及操作,并根據(jù)這些數(shù)據(jù),統(tǒng)計(jì)單據(jù)流轉(zhuǎn)的指標(biāo),以及體現(xiàn)單據(jù)流轉(zhuǎn)的狀況。這些指標(biāo)包括:每日發(fā)起單據(jù)數(shù)、單據(jù)流轉(zhuǎn)時(shí)長(zhǎng)、每個(gè)環(huán)節(jié)的單據(jù)數(shù)、每個(gè)環(huán)節(jié)的流轉(zhuǎn)時(shí)長(zhǎng)等。
(4)應(yīng)用模塊實(shí)用精益化管理報(bào)告。最終對(duì)采集的指標(biāo)信息進(jìn)行監(jiān)控和展現(xiàn),例如用戶情況展現(xiàn)及應(yīng)用模塊情況展現(xiàn)功能,用戶情況展現(xiàn)可分為日均登錄用戶數(shù)、日均用戶活躍率、用戶訪問次數(shù)和活躍率變化、用戶活躍度等,應(yīng)用模塊情況展現(xiàn)可分為應(yīng)用模塊響應(yīng)時(shí)間、應(yīng)用模塊的有用性和應(yīng)用模塊可靠性等。通過相關(guān)指標(biāo)的展示,形成實(shí)用精益化管理報(bào)告,從而實(shí)現(xiàn)系統(tǒng)應(yīng)用模塊的實(shí)用精益化管理。
用戶使用情況涉及的統(tǒng)計(jì)指標(biāo)如表1所示:
下面給出幾個(gè)主要的功能模塊實(shí)例來(lái)說明是如何對(duì)業(yè)務(wù)系統(tǒng)進(jìn)行實(shí)用精益化運(yùn)行監(jiān)測(cè)的。
部門活躍度反映部門下所有用戶在一段時(shí)間內(nèi)的登錄次數(shù),登陸次數(shù)越多,越頻繁,說明該部門用戶越活躍。該功能可以選擇多個(gè)部門進(jìn)行活躍度比較,同時(shí)也能按時(shí)間反映每天的活躍度變化情況。
表1 用戶使用情況涉及的統(tǒng)計(jì)指標(biāo)
圖3 部門活躍度
訪問量主要反映部門用戶對(duì)各業(yè)務(wù)模塊的訪問次數(shù)。用戶可以選擇多個(gè)部門并按訪問量大小排序,可以選擇指定的業(yè)務(wù)模塊進(jìn)行分析,同時(shí)也能按時(shí)間反映每天的訪問量變化情況。通過該指標(biāo),用戶可以了解掌握每個(gè)部門,每個(gè)業(yè)務(wù)模塊的訪問情況。
圖4 訪問量分析
業(yè)務(wù)單據(jù)數(shù)及業(yè)務(wù)耗時(shí)指標(biāo)主要反映業(yè)務(wù)的處理數(shù)量及業(yè)務(wù)環(huán)節(jié)平均處理時(shí)間。通過該指標(biāo)用戶可以全面了解和掌握個(gè)部門的業(yè)務(wù)處理情況,為各部門的業(yè)務(wù)績(jī)效考核提供依據(jù)。
有用性指標(biāo)主要通過訪問率來(lái)定義,訪問率越高,說明功能模塊越有用。有用性指標(biāo)有四種類別定義,分別是非常頻繁,使用頻繁,偶爾使用,幾乎不用??煽啃灾笜?biāo)主要通過錯(cuò)誤率來(lái)定義,錯(cuò)誤率越高,說明功能模塊越不可靠??煽啃灾笜?biāo)也有四種類別定義,分別是非??煽?,比較可靠,基本可靠,很不可靠。有用可靠性指標(biāo)可以讓用戶了解掌握一段時(shí)間內(nèi)各功能模塊是否有用以及是否可靠。
圖5 單據(jù)處理分析
圖6 可靠性分析
實(shí)用化告警分為業(yè)務(wù)告警和應(yīng)用告警。業(yè)務(wù)告警主要反映業(yè)務(wù)環(huán)節(jié)處理超時(shí)數(shù)量。用戶需要先為每個(gè)業(yè)務(wù)環(huán)節(jié)設(shè)置或定義一個(gè)超時(shí)時(shí)間。該配置可以依據(jù)業(yè)務(wù)環(huán)節(jié)的變化進(jìn)行適當(dāng)調(diào)節(jié),以更好地適應(yīng)業(yè)務(wù)系統(tǒng)的變化。當(dāng)業(yè)務(wù)環(huán)節(jié)的處理時(shí)間超過設(shè)置的超時(shí)時(shí)間閾值時(shí),則生成業(yè)務(wù)超時(shí)告警信息。應(yīng)用告警主要反映應(yīng)用模塊的訪問錯(cuò)誤數(shù)。當(dāng)訪問出現(xiàn)錯(cuò)誤時(shí),生成應(yīng)用告警信息。通過實(shí)用化告警信息,用戶可以了解和掌握一段時(shí)間內(nèi)業(yè)務(wù)環(huán)節(jié)處理超時(shí)數(shù)量,并督促業(yè)務(wù)人員提高業(yè)務(wù)處理效率。
圖7 實(shí)用化報(bào)告
通過對(duì)業(yè)務(wù)系統(tǒng)進(jìn)行實(shí)用精益化運(yùn)行監(jiān)測(cè)與分析研究,可以全面掌握企業(yè)信息系統(tǒng)的運(yùn)行狀況,發(fā)現(xiàn)企業(yè)信息系統(tǒng)實(shí)用化薄弱環(huán)節(jié),針對(duì)出現(xiàn)的問題制定解決方案,提高現(xiàn)場(chǎng)實(shí)施人員業(yè)務(wù)和技術(shù)水平,全面提升公司信息系統(tǒng)實(shí)用化水平,實(shí)現(xiàn)客戶與企業(yè)雙贏。同時(shí)有效利用現(xiàn)有的數(shù)據(jù),為高層管理決策提供服務(wù),為行業(yè)的戰(zhàn)略發(fā)展目標(biāo)和市場(chǎng)策略的制定提供依據(jù)。