日日碰狠狠躁久久躁96avv-97久久超碰国产精品最新-婷婷丁香五月天在线播放,狠狠色噜噜色狠狠狠综合久久 ,爱做久久久久久,高h喷水荡肉爽文np肉色学校

睿治

智能數(shù)據(jù)治理平臺(tái)

睿治作為國內(nèi)功能最全的數(shù)據(jù)治理產(chǎn)品之一,入選IDC企業(yè)數(shù)據(jù)治理實(shí)施部署指南。同時(shí),在IDC發(fā)布的《中國數(shù)據(jù)治理市場(chǎng)份額》報(bào)告中,連續(xù)四年蟬聯(lián)數(shù)據(jù)治理解決方案市場(chǎng)份額第一。

解鎖潛在價(jià)值,智行日志治理的實(shí)踐之路

時(shí)間:2024-05-25來源:瘋瘋癲癲小青年瀏覽數(shù):225

一、背景

日志,作為系統(tǒng)運(yùn)行的忠實(shí)記錄者,不僅是問題追蹤的利器,更是性能調(diào)優(yōu)的指南針。通過深入分析日志,我們可以洞悉系統(tǒng)運(yùn)行的每一個(gè)細(xì)節(jié),從而快速定位問題、優(yōu)化性能。同時(shí),日志也可以作為數(shù)據(jù)分析和決策的重要依據(jù)。研發(fā)流程中,如何使用好日志,還是存在著以下難點(diǎn)。

為了排查問題,我們通常需要記錄大量的日志。如何關(guān)聯(lián)客戶端當(dāng)次請(qǐng)求的所有日志,確保信息的完整性和連貫性;

日志記錄對(duì)象過大可能導(dǎo)致頻繁GC(垃圾回收),進(jìn)而造成服務(wù)器不穩(wěn)定;

一些核心日志的丟失會(huì)給排查問題帶來極大的困難;

盡管日志的發(fā)送已經(jīng)實(shí)現(xiàn)了異步處理,但過多的發(fā)送仍會(huì)占用CPU、內(nèi)存等資源。大量的冗余日志也會(huì)浪費(fèi)寶貴的存儲(chǔ)資源;

針對(duì)以上問題,本文提出一個(gè)日志治理挖掘方案。該方案旨在通過對(duì)系統(tǒng)日志進(jìn)行標(biāo)準(zhǔn)化、規(guī)范化、統(tǒng)一化處理,進(jìn)一步挖掘系統(tǒng)日志的潛在價(jià)值。

二、思考

我們整理了日志的使用場(chǎng)景,大致分為四個(gè)方向:指標(biāo)監(jiān)控,Trace定位排障,性能分析,數(shù)據(jù)分析與報(bào)表(實(shí)時(shí)/離線)。

指標(biāo)監(jiān)控:指標(biāo)監(jiān)控是系統(tǒng)穩(wěn)定運(yùn)行的重要保障,它通過對(duì)核心業(yè)務(wù)邏輯、第三方接口響應(yīng)、數(shù)據(jù)有效性等關(guān)鍵指標(biāo)進(jìn)行實(shí)時(shí)追蹤與分析,確保系統(tǒng)性能始終處于最佳狀態(tài)。

Trace定位排障:在復(fù)雜的業(yè)務(wù)場(chǎng)景中,當(dāng)遇到請(qǐng)求處理異常、系統(tǒng)響應(yīng)錯(cuò)誤、業(yè)務(wù)展示邏輯核對(duì)等問題時(shí),定位排障成為了關(guān)鍵的一環(huán)。當(dāng)我們已經(jīng)通過上游定位、CDataportal查詢或日常開發(fā)調(diào)試等手段,確定了具體的問題請(qǐng)求,接下來的任務(wù)就是通過日志精準(zhǔn)鎖定問題所在,并迅速解決故障。

場(chǎng)景問題定位:場(chǎng)景問題定位是一種針對(duì)具體場(chǎng)景,通過深入分析、精細(xì)排查,以快速找到問題根源的方法。我們會(huì)利用日志分析、監(jiān)控?cái)?shù)據(jù)、用戶反饋等多種手段,對(duì)問題場(chǎng)景進(jìn)行深入剖析。通過對(duì)比正常場(chǎng)景與問題場(chǎng)景的差異,我們可以進(jìn)一步縮小問題范圍,確定可能的問題源頭。

數(shù)據(jù)分析與報(bào)表:通過日志記錄數(shù)據(jù)分析與報(bào)表編制流程,我們能夠?qū)崟r(shí)捕捉系統(tǒng)潛在問題,進(jìn)而實(shí)現(xiàn)問題的迅速定位與解決。同時(shí),這一做法也有助于我們更加精準(zhǔn)地向團(tuán)隊(duì)成員、決策者及BI等相關(guān)方展示分析成果與深刻洞察,確保各方能夠基于充分的信息作出合理決策。

三、解決方案

3.1 分布式系統(tǒng)日志的整合與串聯(lián)

分布式系統(tǒng)日志的串聯(lián)是確保在復(fù)雜的分布式環(huán)境中能夠準(zhǔn)確追蹤和關(guān)聯(lián)各個(gè)組件產(chǎn)生的日志記錄,從而實(shí)現(xiàn)對(duì)整個(gè)系統(tǒng)行為的全面理解。以下是關(guān)于分布式系統(tǒng)日志串聯(lián)實(shí)現(xiàn)中的關(guān)鍵步驟:

1)唯一標(biāo)識(shí)生成:在每個(gè)業(yè)務(wù)任務(wù)請(qǐng)求開始時(shí),生成一個(gè)全局唯一的標(biāo)識(shí)。這個(gè)標(biāo)識(shí)將貫穿整個(gè)請(qǐng)求的生命周期,用于標(biāo)識(shí)和串聯(lián)與該請(qǐng)求相關(guān)的所有日志記錄。

2)標(biāo)識(shí)傳遞:在分布式系統(tǒng)中,請(qǐng)求會(huì)經(jīng)過多個(gè)系統(tǒng)或組件。為了確保日志的準(zhǔn)確串聯(lián),這個(gè)唯一標(biāo)識(shí)需要在請(qǐng)求傳遞過程中被正確攜帶。

我們通過在請(qǐng)求入口生成全局traceid,并存放在線程安全的context 中。每個(gè)組件、線程中,當(dāng)記錄日志時(shí),從線程 `context` 中獲取 `traceId`,并將其作為日志記錄的一部分。通過這種方式,我們實(shí)現(xiàn)了服務(wù)內(nèi)的日志串聯(lián)。

在調(diào)用下一級(jí)服務(wù)時(shí),將當(dāng)次請(qǐng)求的`traceId` 作為自定義頭的一部分添加到請(qǐng)求頭中。這樣,下一級(jí)服務(wù)或組件就能夠從請(qǐng)求頭中提取 `traceId`,并將其存放到自己的線程 `context` 中,通過這種方式,我們實(shí)現(xiàn)了系統(tǒng)間日志的關(guān)聯(lián)。

3.2 前后端日志信息的整合與貫通解決方案

前后端日志串聯(lián)打通方案主要涉及前端和后端產(chǎn)生的日志能夠按照特定的規(guī)則進(jìn)行關(guān)聯(lián)和整合,以便能夠追蹤和分析用戶操作的生命周期。以下是前后端日志串聯(lián)打通方案的關(guān)鍵步驟:

1)生成唯一標(biāo)識(shí):在請(qǐng)求的入口點(diǎn)(如API網(wǎng)關(guān)或負(fù)載均衡器),為每個(gè)請(qǐng)求生成一個(gè)全局唯一的標(biāo)識(shí),如`traceId`。這個(gè)標(biāo)識(shí)作為用戶上一次操作的traceid將用于串聯(lián)前后端的日志記錄。

2)傳遞`traceId`到前端:當(dāng)后端響應(yīng)前端請(qǐng)求時(shí),將生成的`traceId`包含在響應(yīng)頭中返回給前端。前端接收到響應(yīng)后,提取`traceId`,并將其存儲(chǔ)在合適位置。

3)前端回傳`traceId`:前端在發(fā)起下一次請(qǐng)求時(shí),將存儲(chǔ)的`traceId`作為請(qǐng)求的一部分傳遞給服務(wù)端。這樣,當(dāng)次請(qǐng)求就可以與上一次請(qǐng)求實(shí)現(xiàn)串聯(lián)。

3.3 統(tǒng)一標(biāo)準(zhǔn)日志管理與模塊化解決方案

統(tǒng)一標(biāo)準(zhǔn)日志管理與模塊化解決方案旨在構(gòu)建一個(gè)統(tǒng)一、可維護(hù)且可擴(kuò)展的日志記錄、查詢體系,以提升系統(tǒng)的可觀察性、問題追蹤能力,為系統(tǒng)的穩(wěn)定運(yùn)行和持續(xù)優(yōu)化提供有力支持。以下是關(guān)于日志標(biāo)準(zhǔn)化與組件化的關(guān)鍵步驟:

1)同一日志分層標(biāo)準(zhǔn):根據(jù)系統(tǒng)的不同功能和組件,將日志劃分為不同的層級(jí),如應(yīng)用層、業(yè)務(wù)邏輯層、數(shù)據(jù)訪問層、外部接口層等。每個(gè)層級(jí)應(yīng)記錄與該層級(jí)相關(guān)的關(guān)鍵信息和事件,以便于問題定位和性能分析。

2)統(tǒng)一日志格式:定義一套標(biāo)準(zhǔn)的日志字段,包括但不限于時(shí)間戳、traceId、日志級(jí)別、日志來源、請(qǐng)求信息(如請(qǐng)求方法、URL、參數(shù)等)、響應(yīng)信息(如狀態(tài)碼、返回?cái)?shù)據(jù)等)、異常堆棧等。確保所有系統(tǒng)和組件產(chǎn)生的日志都包含這些標(biāo)準(zhǔn)字段,以便于日志的聚合和查詢。

3)統(tǒng)一接入方式:制定日志接入的統(tǒng)一規(guī)范,包括日志的收集、傳輸、存儲(chǔ)等流程。明確日志數(shù)據(jù)的數(shù)據(jù)格式(如JSON、XML等)、傳輸方式等。

4)日志分析工具:開發(fā)日志分析工具,對(duì)收集到的日志數(shù)據(jù)進(jìn)行加工處理,統(tǒng)計(jì)分析、可視化展示和異常檢測(cè)等功能。

5)安全與性能優(yōu)化:對(duì)敏感數(shù)據(jù)進(jìn)行加密處理,確保存儲(chǔ)過程中的機(jī)密性。對(duì)日志數(shù)據(jù)進(jìn)行壓縮處理,減少存儲(chǔ)空間的占用和網(wǎng)絡(luò)傳輸?shù)拈_銷。

3.4 大報(bào)文日志的精細(xì)化管理與處理方案

大報(bào)文日志的處理過程中,確保日志的完整性和可讀性,同時(shí)保證不影響服務(wù)性能,是至關(guān)重要的。以下是處理過程的關(guān)鍵步驟:

1)大報(bào)文日志的判斷

根據(jù)系統(tǒng)的內(nèi)存限制、日志的生成頻率以及業(yè)務(wù)需求,設(shè)定一個(gè)合理的內(nèi)存占用閾值。對(duì)指定日志報(bào)文對(duì)象做內(nèi)存空間占用分析,如果超過閾值,則視為大對(duì)象。

2)異步壓縮、發(fā)送

使用線程池,創(chuàng)建專門負(fù)責(zé)壓縮和發(fā)送日志的后臺(tái)任務(wù)。當(dāng)有大報(bào)文日志產(chǎn)生時(shí),將其傳遞給后臺(tái)任務(wù)隊(duì)列,由后臺(tái)任務(wù)異步處理,確保主服務(wù)能夠繼續(xù)處理請(qǐng)求。

3)選擇合適的壓縮算法

使用如Gzip、ZSTD等高效的壓縮算法,這些算法能夠在壓縮率和解壓縮速度之間取得良好的平衡。確保所選的壓縮算法能夠處理大報(bào)文,并且不會(huì)導(dǎo)致內(nèi)存溢出或其他問題。

通過以上關(guān)鍵步驟的實(shí)施和監(jiān)控,可以確保大報(bào)文日志在處理過程中的完整性和可讀性,同時(shí)盡可能減少對(duì)服務(wù)性能的影響。

3.5 高效日志清洗與多維度分析解決方案

日志清洗與分析方案,旨在實(shí)現(xiàn)日志的有效清洗與分析,通過提取有用信息、轉(zhuǎn)換結(jié)構(gòu)化數(shù)據(jù),為后續(xù)的分析、監(jiān)控和故障排查工作提供堅(jiān)實(shí)基礎(chǔ)。方案主要包括日志處理、關(guān)鍵字段提取、維度聚合和可視化展示等步驟,以確保日志數(shù)據(jù)的準(zhǔn)確性和分析的高效性。以下是該方案的主要步驟:

1)日志處理:從各個(gè)系統(tǒng)和應(yīng)用程序中收集原始日志數(shù)據(jù),對(duì)需要進(jìn)行加密或壓縮處理的日志信息進(jìn)行解密和解壓縮操作,還原出原始的日志內(nèi)容。根據(jù)業(yè)務(wù)需求,篩選出需要分析的日志數(shù)據(jù),排除無用或重復(fù)的日志信息。

2)提取關(guān)鍵字段:通過Aviator 引擎運(yùn)行提取腳本,識(shí)別并提取出日志中的關(guān)鍵字段,如接口名、是否成功等。對(duì)提取出的字段進(jìn)行格式化和標(biāo)準(zhǔn)化處理,確保字段的一致性和可比性。這些字段是后續(xù)分析的基礎(chǔ)。

3)維度聚合:根據(jù)業(yè)務(wù)需求和分析目標(biāo),定義合適的維度,如時(shí)間維度、事件類型維度等。按照定義的維度對(duì)日志數(shù)據(jù)進(jìn)行聚合統(tǒng)計(jì),計(jì)算出各個(gè)維度的統(tǒng)計(jì)指標(biāo),如計(jì)數(shù)、平均值、最大值等。將聚合后的結(jié)果存儲(chǔ)到clickhouse中,以便于后續(xù)的查詢和分析。

4)可視化:根據(jù)業(yè)務(wù)需求和分析目標(biāo),設(shè)計(jì)合適的看板,展示關(guān)鍵指標(biāo)和統(tǒng)計(jì)結(jié)果。生成詳細(xì)的報(bào)表,包括各個(gè)維度的統(tǒng)計(jì)數(shù)據(jù)和趨勢(shì)分析,以供業(yè)務(wù)人員查閱和分析。在看板和報(bào)表中提供交互功能,如篩選、排序、鉆取等,方便用戶進(jìn)行深入分析和探索。

四、未來規(guī)劃

組件化:通過組件化,我們可以為系統(tǒng)提供零入侵的接入方案。這意味著在接入日志治理系統(tǒng)時(shí),無需對(duì)原有系統(tǒng)進(jìn)行任何修改或侵入,只需將日志組件集成到系統(tǒng)中即可。這種零入侵的方式不僅保證了原有系統(tǒng)的穩(wěn)定性和安全性,還大大簡化了接入流程,提高了效率。

配置化:通過對(duì)關(guān)鍵流程接口進(jìn)行擴(kuò)展化處理,我們可以實(shí)現(xiàn)組件的靈活配置和定制。用戶可以根據(jù)實(shí)際需求,對(duì)日志組件進(jìn)行個(gè)性化的配置,以滿足不同的業(yè)務(wù)場(chǎng)景和需求。

抽樣化:核心日志往往包含了大量的關(guān)鍵信息,但其數(shù)量也非常龐大,如果全部存儲(chǔ),將帶來巨大的存儲(chǔ)成本。抽樣化技術(shù)可以解決這個(gè)問題。通過對(duì)核心日志進(jìn)行抽樣輸出,我們可以只保留部分具有代表性的日志數(shù)據(jù),從而大大降低存儲(chǔ)成本。

降低資源消耗:通過自定義序列化方式,我們可以優(yōu)化日志數(shù)據(jù)的傳輸格式,減少數(shù)據(jù)傳輸量。其次,采用日志批量發(fā)送的方式,可以將多條日志合并成一次發(fā)送,減少發(fā)送次數(shù)和網(wǎng)絡(luò)開銷。

(部分內(nèi)容來源網(wǎng)絡(luò),如有侵權(quán)請(qǐng)聯(lián)系刪除)
立即申請(qǐng)數(shù)據(jù)分析/數(shù)據(jù)治理產(chǎn)品免費(fèi)試用 我要試用
  • 相關(guān)主題
  • 相關(guān)大數(shù)據(jù)問答
  • 相關(guān)大數(shù)據(jù)知識(shí)
產(chǎn)品功能
平臺(tái)化

全面覆蓋數(shù)據(jù)治理9大領(lǐng)域,采用微服務(wù)架構(gòu),融合度高,延展性強(qiáng)

可視化

實(shí)現(xiàn)數(shù)據(jù)從創(chuàng)建到消亡全生命周期的可視化,也實(shí)現(xiàn)全角色的可視化

智能化

豐富的智能元素和功能,大大縮短數(shù)據(jù)管理周期、減少成本浪費(fèi)

customer

在線咨詢

在線咨詢

點(diǎn)擊進(jìn)入在線咨詢