李法杰
通過近幾年的建設(shè)和發(fā)展,農(nóng)村商業(yè)銀行的信息科技治理水平不斷提升,IT系統(tǒng)不斷推陳出新,應(yīng)用系統(tǒng)數(shù)量不斷增加,與此同時(shí),系統(tǒng)間關(guān)系變得愈加復(fù)雜,系統(tǒng)運(yùn)維壓力也日漸增加。作為運(yùn)維工作中問題分析和故障診斷的重要工具,日志記錄是否全面,關(guān)鍵信息檢索是否方便往往直接影響故障和問題的診斷效率,進(jìn)而影響運(yùn)維的整體水平。本文通過對農(nóng)商銀行日志管理現(xiàn)狀分析,借鑒同業(yè)及互聯(lián)網(wǎng)行業(yè)領(lǐng)先實(shí)踐,提出通過制定全行統(tǒng)一的系統(tǒng)日志技術(shù)標(biāo)準(zhǔn)和建設(shè)統(tǒng)一日志管理平臺,有效解決運(yùn)行維護(hù)管理中存在的問題,為進(jìn)一步實(shí)現(xiàn)端到端應(yīng)用級監(jiān)控奠定數(shù)據(jù)基礎(chǔ)。
一、日志管理現(xiàn)狀分析
日志文件是由系統(tǒng)或者應(yīng)用程序產(chǎn)生的用于記錄系統(tǒng)和應(yīng)用程序的操作事件和各種服務(wù)的啟動(dòng)、運(yùn)行、關(guān)閉等信息。商業(yè)銀行信息系統(tǒng)數(shù)量龐大,以山東農(nóng)村商業(yè)銀行為例,截至目前,已建成包括核心業(yè)務(wù)平臺、信貸管理系統(tǒng)、經(jīng)營決策系統(tǒng)等各類應(yīng)用系統(tǒng)超過一百多套,覆蓋業(yè)務(wù)處理、運(yùn)維管理、經(jīng)營管理等各領(lǐng)域。由于銀行信息系統(tǒng)建設(shè)一般采用多家廠商共同建設(shè)的模式,各技術(shù)廠商引入自身的日志技術(shù)標(biāo)準(zhǔn)或規(guī)范,內(nèi)容和質(zhì)量參差不齊,相互無法統(tǒng)一,造成后續(xù)日志使用時(shí)格式混亂、無法閱讀等問題。
(一)數(shù)據(jù)質(zhì)量與標(biāo)準(zhǔn)
應(yīng)用系統(tǒng)日志技術(shù)標(biāo)準(zhǔn)是對日志數(shù)據(jù)的分類、內(nèi)容、格式等進(jìn)行定義,在遵守行業(yè)相關(guān)應(yīng)用安全規(guī)范、集成規(guī)范、數(shù)據(jù)標(biāo)準(zhǔn)等基礎(chǔ)上對日志文件的記錄、存儲和使用提供標(biāo)準(zhǔn)化規(guī)范。目前,農(nóng)村商業(yè)銀行日志數(shù)據(jù)質(zhì)量與標(biāo)準(zhǔn)上普遍存在以下問題。
日志數(shù)據(jù)標(biāo)準(zhǔn)不統(tǒng)一。普遍缺少統(tǒng)一的日志數(shù)據(jù)標(biāo)準(zhǔn),大部分應(yīng)用雖有各自的數(shù)據(jù)標(biāo)準(zhǔn)或規(guī)范,但規(guī)范內(nèi)容不完善、不統(tǒng)一。
日志分類不完整。大部分應(yīng)用均對日志內(nèi)容進(jìn)行了分類,運(yùn)維工作中使用最多的是應(yīng)用日志,但各大多數(shù)應(yīng)用并未明確區(qū)分應(yīng)用日志與系統(tǒng)日志。
日志內(nèi)容不完整。大部分應(yīng)用的日志標(biāo)準(zhǔn)均未對日志內(nèi)容進(jìn)行清晰定義,不僅關(guān)鍵業(yè)務(wù)要素未記錄,服務(wù)調(diào)用請求信息也未記錄。
日志格式不一致。大部分應(yīng)用均對日志格式進(jìn)行了定義,但各應(yīng)用系統(tǒng)間日志的格式各異,不利于不同應(yīng)用的運(yùn)維人員閱讀或者交由日志工具進(jìn)行數(shù)據(jù)抽取和識別。
流水號規(guī)范缺失。部分關(guān)鍵應(yīng)用已經(jīng)使用了流水號,但該流水號并非全局使用,僅僅起到在該應(yīng)用內(nèi)部標(biāo)識事務(wù)唯一性的作用,且只在其直接上、下游系統(tǒng)間傳遞。既沒實(shí)現(xiàn)全應(yīng)用的使用統(tǒng)一,也無法實(shí)現(xiàn)全應(yīng)用的事務(wù)關(guān)聯(lián),不能支撐全行交易端到端交易鏈路的還原。
(二)日志數(shù)據(jù)存儲
各應(yīng)用系統(tǒng)日志普遍采取本地存儲的方式,日志存儲在各自的應(yīng)用服務(wù)器或數(shù)據(jù)庫服務(wù)器上,缺少集中統(tǒng)一的存儲設(shè)備。日志數(shù)據(jù)留存周期、歸檔轉(zhuǎn)儲等缺少統(tǒng)一的規(guī)劃,對于時(shí)間跨度較長的問題,在分析處理時(shí),日志數(shù)據(jù)往往已被清理,存在日志缺失的風(fēng)險(xiǎn)。
二、統(tǒng)一日志管理平臺應(yīng)用架構(gòu)設(shè)計(jì)
針對當(dāng)前農(nóng)村商業(yè)銀行應(yīng)用系統(tǒng)日志管理中存在的問題,在統(tǒng)一各應(yīng)用系統(tǒng)日志標(biāo)準(zhǔn)的基礎(chǔ)上,構(gòu)建全行級的統(tǒng)一日志管理平臺,實(shí)現(xiàn)行內(nèi)各應(yīng)用系統(tǒng)分散日志的集中存儲和數(shù)據(jù)積累,采用全局流水號機(jī)制實(shí)現(xiàn)跨系統(tǒng)交易日志關(guān)聯(lián)和交易路徑還原,在此基礎(chǔ)上實(shí)現(xiàn)基于日志數(shù)據(jù)的相關(guān)應(yīng)用和服務(wù),是農(nóng)村商業(yè)銀行應(yīng)用系統(tǒng)日志管理的未來轉(zhuǎn)型方向。日志管理平臺作為全行級基礎(chǔ)性平臺,一方面要滿足支持故障定位分析和運(yùn)維優(yōu)化的需要,另一方面要為監(jiān)控、營銷等系統(tǒng)提供數(shù)據(jù)支持。其應(yīng)用架構(gòu)設(shè)計(jì)如圖1。
(一)服務(wù)層。作為統(tǒng)一日志管理平臺的前臺界面和服務(wù)接口,是用戶訪問或外系統(tǒng)調(diào)用的入口。服務(wù)層主要完成以下功能:
1.檢索與統(tǒng)計(jì)。用戶可通過檢索條件檢索日志內(nèi)容,用于分析故障原因。檢索方式包括關(guān)鍵字檢索、范圍與條件檢索和組合檢索,檢索結(jié)果可以通過數(shù)據(jù)明細(xì)和圖表的形式有序展現(xiàn)。
2.日志瀏覽與數(shù)據(jù)管理。日志管理平臺提供在線瀏覽和離線瀏覽日志管理平臺的日志文件兩種方式。
3.交易端到端分析。全局流水號的引入使得平臺支持對交易流水?dāng)?shù)據(jù)進(jìn)行實(shí)時(shí)的關(guān)聯(lián)分析,直觀展示交易鏈路,輔助維護(hù)人員準(zhǔn)確定位故障,包括端到端鏈路還原、耗時(shí)分析、接口報(bào)文分析和錯(cuò)誤日志分析。
4.交易統(tǒng)計(jì)分析。豐富的日志數(shù)據(jù)支持交易關(guān)系分析、應(yīng)用關(guān)系分析、交易量與交易性能關(guān)聯(lián)分析,為維護(hù)人員運(yùn)維優(yōu)化提供信息參考,為管理者提供決策依據(jù)。
5.數(shù)據(jù)服務(wù)。為數(shù)據(jù)消費(fèi)應(yīng)用提供服務(wù)接口,包含交易明細(xì)數(shù)據(jù)存取和指標(biāo)告警數(shù)據(jù)存取。
6.用戶與數(shù)據(jù)安全。對不同用戶進(jìn)行訪問控制和敏感數(shù)據(jù)遮蓋,包含用戶管理和權(quán)限管理。
7.系統(tǒng)管理。對日志管理平臺進(jìn)行配置和維護(hù),包含代理管理、采集管理、安裝與部署、配置與管理和系統(tǒng)監(jiān)控。
(二)應(yīng)用邏輯層。是統(tǒng)一日志管理平臺的核心,它是前臺展現(xiàn)的業(yè)務(wù)邏輯部分。包含:
1.全文日志檢索。將前臺檢索要素和統(tǒng)計(jì)指標(biāo)轉(zhuǎn)換為檢索統(tǒng)計(jì)語句,對檢索和統(tǒng)計(jì)結(jié)果進(jìn)行處理后返回前臺,包含日志檢索和日志統(tǒng)計(jì);
2.交易明細(xì)處理。對交易明細(xì)數(shù)據(jù)進(jìn)行加工處理,支持服務(wù)層交易端到端分析和交易統(tǒng)計(jì)分析。包含耗時(shí)計(jì)算、報(bào)文字典計(jì)算、交易鏈路還原和統(tǒng)計(jì)/關(guān)聯(lián)分析;
3.權(quán)限與安全。對權(quán)限管理、訪問控制和敏感數(shù)據(jù)遮蓋形成支持,包含功能權(quán)限控制、數(shù)據(jù)權(quán)限控制、敏感數(shù)據(jù)遮蓋和用戶認(rèn)證。
(三)日志數(shù)據(jù)存儲層。存儲層是統(tǒng)一日志管理平臺的基礎(chǔ)。存儲層接收并存儲收集層發(fā)送的日志數(shù)據(jù),包含:
1.分布式全量日志存儲。提供分布式文件存儲需要的管理功能,支撐展現(xiàn)層的日志在線瀏覽和離線瀏覽。主要功能包括:日志入庫、日志輸出和分布式文件管理等;
2.日志索引。負(fù)責(zé)近期日志數(shù)據(jù)的索引和檢索,同時(shí)提供近期日志數(shù)據(jù)統(tǒng)計(jì)分析功能。支撐界面層的故障定位和處理層的全文日志檢索。主要功能包括:索引建立和索引數(shù)據(jù)管理等;
3.歷史數(shù)據(jù)存儲。負(fù)責(zé)歷史日志數(shù)據(jù)的存儲和統(tǒng)計(jì)分析。數(shù)據(jù)來源于在線檢索子系統(tǒng)和海量日志文件存儲子系統(tǒng)的批量導(dǎo)入。主要功能包括:數(shù)據(jù)導(dǎo)入、數(shù)據(jù)提?。?/p>
(四)收集層。收集層是統(tǒng)一日志管理平臺獲取日志文件的關(guān)鍵環(huán)節(jié),是日志數(shù)據(jù)分發(fā)重要的組成部分。它接收代理層上送的日志數(shù)據(jù),經(jīng)過解析和格式轉(zhuǎn)換等加工過程,分發(fā)給分布式全量日志存儲和日志索引。主要功能包括:日志接收、日志解析、格式轉(zhuǎn)換、日志分發(fā)、集群控制、通訊協(xié)議等。
(五)代理層。日志采集代理是統(tǒng)一日志管理平臺獲取日志文件的入口,日志采集功能是統(tǒng)一日志管理平臺重要的組成部分。它的主要作用是將被接入系統(tǒng)日志增量數(shù)據(jù)傳輸給統(tǒng)一日志管理平臺。日志采集代理的主要能力為日志偵聽、日志讀取、日志傳輸和采集控制等。
三、結(jié)束語
本文在分析農(nóng)村商業(yè)銀行應(yīng)用系統(tǒng)日志管理現(xiàn)狀的基礎(chǔ)上,提出了基于全局流水號的方式解決各應(yīng)用系統(tǒng)日志無法以交易為主線進(jìn)行關(guān)聯(lián),無法支撐交易端到端分析的問題,在日志存儲上,統(tǒng)一日志平臺采用分布式存儲技術(shù)解決現(xiàn)有日志只能分散在各應(yīng)用、存在存儲空間上限、長期存儲成本不經(jīng)濟(jì)等問題,能夠較好解決當(dāng)前農(nóng)村商業(yè)銀行應(yīng)用系統(tǒng)日志管理中存在問題。