视色av,亚洲免费av一区二区,日韩av一区在线观看,日韩色中色

首頁

/

IT可觀測系列剖析——日志體系建設,企業運維排障“最后一公里”

發布日期:2024-09-09 15:04:39

分享到

01. 何為排障“最后一公里”

為什么說在企業運維排障中,日志體系建設通常被稱為"最后一公里"

這是因為日志是在系統出現問題時提供關鍵信息的重要數據來源。在排障過程中,日志記錄了系統運行時的各種活動和事件,可以幫助運維人員追蹤問題的根源。

“最后一公里”指的是在排障過程中,當其他排查方法都無法解決問題時,運維人員會轉向日志來查找答案。日志記錄了系統的運行狀態、錯誤信息、異常情況等,通過分析日志可以幫助定位問題,找到解決方案。

舉例來說,核心交付系統每天處理數百萬筆交易。有一天,客戶投訴稱“一小部分交易失敗,而且無法追蹤失敗原因”。工程師利用監控工具檢測到一些異常指標,但這些指標無法提供問題的具體細節。通過對比成功和失敗的交易日志,工程師發現交易失敗的根本原因在于與第三方服務的通信故障。于是,工程師與第三方服務的支持團隊聯系,并共享了相關日志,成功解決了問題,恢復了交易正常運行,讓相關的失敗情況不再重復發生

以上提到的只是一種故障場景,說明日志對于排障處理起到關鍵作用。日志數據記錄了系統或程序在執行過程中每個事件的明細詳情。通過收集日志數據,可以獲得系統或程序發生故障時的現場快照,精確了解根本問題所在。如果在前期能夠聚焦范圍,鎖定少量關鍵日志,那么大部分的故障根因問題就可以被快速確認。

因此,日志體系建設在企業運維中扮演著至關重要的角色,它不僅可以幫助提高故障排查的效率,還可以提升系統的穩定性和可靠性。所以,人們常說日志體系建設是企業運維排障中的“最后一公里”。

那為什么需要建設日志體系?其面臨的挑戰又是什么?我們應當如何建設日志體系呢?


02. 為什么要建設日志工具

1)面向運維者

主動發現:能精準從日志數據中捕捉異常并告警;

輔助運維:通過日志了解到詳細信息,以判斷下一步運維操作;

采集便捷:無侵入式采集,中心化采集,便于推廣實施。

2)面向開發者

快速查詢集中查詢,跨應用查詢,不需要來回切換機器;

根因定位能精準獲取到日志的上下文做代碼根因定位;

輔助優化:從日志信息中獲取有效信息,優化現有代碼。

3)面向部門管理者

建設:避免煙囪式建設運維工具,需要體系化打通數據和上下游;

管理:日志數據權限管控,統一查看,統一存儲和管理;

規范:日志規范落地需要平臺和工具的承載。

4)面向企業領導者

競爭:通過完整的可觀測體系讓公司運營效率超過競爭對手;

合規:讓日志的記錄符合政策法規,避免審計風險;

安全:各類訪問和操作日志數據是信息安全的重要信息來源。


03. 日志體系建設所面臨的挑戰

  • 據量大:運維系統產生的日志數據量通常很大,每天可能產生幾十億條、上百GB甚至TB級的日志數據,需要有效的存儲和管理機制來處理這些海量數據。
  • 日志格式多樣:不同的系統和應用程序可能會生成不同格式的日志,需要有效地從海量日志數據中提取有用信息和進行數據分析,并將非結構化數據轉換成結構化數據。
  • 日志安全性:日志中可能包含敏感信息,需要確保日志的安全性,避免泄露敏感信息。
  • 監控和告警:建立有效的監控和告警機制,及時發現問題并采取措施是關鍵,但也是一個挑戰。
  • 日志保留策略:制定合適的日志保留策略,既要滿足合規要求,又要兼顧存儲成本和性能。
  • 日志可視化:將日志數據可視化展示,便于運維人員快速了解系統狀態和問題,但搭建可視化平臺也是一個挑戰,需要考慮到性能因素。
  • 日志采集和傳輸:確保日志的完整性和及時性,需要建立高效的日志采集和傳輸機制。

故日志體系建設所面臨的挑戰需要綜合考慮技術、安全、隱私、性能等多方面因素,只有解決上述問題才能建立起一個完善的運維日志體系


04. 日志建設實踐引導

1)日志數據標準化,確保規范

① 定義日志規范

  • 確定日志格式:定義日志記錄的格式,包括字段、分隔符和結構。可以選擇使用通用的格式(如JSON)或自定義格式。
  • 確定關鍵字段:識別和定義需要記錄的關鍵字段,如時間戳、事件類型、請求URL、用戶ID等。確保關鍵字段的準確性和一致性。
  • 定義日志級別:確定日志的級別,如調試、信息、警告和錯誤。根據實際需求選擇適當的級別。

② 記錄關鍵信息

  • 時間戳:確保每條日志記錄都包含準確的時間戳信息,以便進行時間相關的分析和調查。
  • 事件類型:明確記錄每個日志事件的類型,以便在后續的分析和查詢中能夠準確識別和過濾。
  • 請求信息對于涉及網絡請求的日志,記錄關鍵的請求信息,如請求URL、請求方法、請求參數等。這有助于跟蹤和分析請求流程和性能。
  • 異常信息:在錯誤和異常情況下,記錄詳細的異常信息,包括異常類型、堆棧跟蹤、錯誤碼等,以便進行故障排查和錯誤分析。

③ 支持開源協議

  • 順應業界主流趨勢,開源社區(OT)已經在很早期就開始設計可觀測數據之間的關聯關系,且在最新的OpenTelemetry規范中,制定了日志數據的規范。
  • 方便拓展對接:支持開源協議,可以與自己早期使用的開源工具或者組件相互對接,兼容存量系統。
  • 生態長存:采集和處理工具千千萬,唯開源生態長存,可拓展和替換是企業建設工具時必須考慮的因素。

④ 實踐建議

  • 避免冗余信息:避免在日志中記錄重復或冗余的信息。只記錄必要的、關鍵的信息,以減少日志量和存儲開銷。
  • 敏感信息保護:注意保護日志中可能包含的敏感信息,如用戶密碼、個人身份信息等。采用適當的脫敏措施,確保敏感信息不會泄露。
  • 日志注釋和上下文:在關鍵的日志記錄中,添加注釋和上下文信息,以便更好地理解日志的背景和意義。這有助于后續的分析和調查工作。

遵循日志規范準確記錄關鍵信息是建設穩健可靠的日志系統的關鍵所在。定義規范、記錄關鍵信息、并遵循最佳實踐可以更好地利用日志數據進行故障排查、性能優化和安全審計等工作。這些步驟旨在確保日志信息經過明確、準確和一致的格式,從而更好地滿足業務需求。


2)日志數據精煉,優化清洗

日志數據是文本數據,難以讀懂,更難以通過統計分析賦能運維、運營、業務人員。因此,構建日志體系時需要考慮工具是否具備強大的日志清洗能力,支持將各類格式的日志進行結構化解析,從而可以基于結構化數據構建資源監控、業務監控、業務分析等場景。

除了強大的日志清洗能力外,預置固定清洗模板也十分重要,不僅可以提升日志清洗的效率,還可以助力企業日志標準化建設,有利于減輕落地推廣的難度。


3)日志數據安全保護,數據脫敏

日志數據作為系統運行和活動的記錄,可能包含敏感信息,如個人身份信息、密碼、信用卡號等。這些敏感數據如果在日志中以明文形式存在,可能會造成嚴重的安全風險,如數據泄露、隱私侵犯等問題。因此,對日志數據進行脫敏處理是必要的。

通過數據脫敏,可以有效保護敏感信息的安全性,避免泄露風險。脫敏技術可以將敏感數據轉換為無意義的、難以識別的數據,保留數據的結構和格式,同時隱藏真實內容。這樣既能保護用戶隱私,又能確保數據的完整性和可用性,同時遵守相關的隱私法規和合規要求。


4)持久存儲,日志長周期保留策略

為了滿足合規性、監管要求、故障排查、趨勢分析和歷史記錄等目的,某些日志數據需要被長期保留,但長期存儲會面臨存儲成本和維護成本過高的問題。我們可以通過以下的思路來制定日志長周期存儲策略。

① 合理選擇存儲介質

  • 將高頻查看且較新的日志存儲在Elasticsearch或其他閃存設備上,這樣可以方便搜索和分析。
  • 將低頻查看但需要合規審計的日志存儲在較便宜和容量較大的大數據存儲設備上,如HDFS等,以降低存儲和維護成本。

② 數據備份及可恢復

  • 對于兩種不同的存儲介質,應具備數據自動遷移/備份的能力。不再需要頻繁查看的日志數據可以平滑地遷移至容量更大的存儲設備上。如果審計部門或工程師需要查看歷史久遠的日志數據,可以通過簡單的界面化操作快速將日志數據重新載入到Elasticsearch或閃存設備上進行查詢和分析。

③ 數據壓縮

  • 為了節省存儲空間,對長期存儲的日志數據進行壓縮也是十分必要的。我們需要選擇適當的壓縮算法和壓縮比例,以平衡存儲成本和數據訪問的效率。
  • 實施這些策略后,企業能夠更好地維護日志長周期存儲,節省存儲成本和維護成本,并使存儲數據更加高效、安全、規范化。


5)日志檢索,提升運維效能

日志檢索在日志體系建設中扮演著關鍵的角色,其目標是為用戶提供一種快速定位系統問題和異常的能力,以便加速故障排查和問題診斷的過程。為實現這一目標,日志檢索需要具備基礎的查詢語法,允許用戶根據關鍵詞、時間范圍等條件來檢索日志數據,以快速定位所需信息。在日志檢索過程中,用戶還可以使用通配符等高級查詢語法,以更精準地過濾和搜索日志數據。同時考慮到一些安全合規,日志檢索還需具備脫敏檢索功能,可以在保障數據隱私的前提下,依然能夠有效地進行日志檢索和分析。

另外,日志檢索還應具備用戶友好的查詢界面和交互體驗,使用戶能夠輕松地輸入查詢條件、查看搜索結果,并進行進一步的篩選和分析。除了基礎的字段過濾外,一些高級功能如統計分析、可視化展示等也可以幫助用戶更全面地理解日志數據,快速發現系統中的問題和異常。

在涉及多業務之間日志檢索時,還需要支持多日志數據之間的聯合檢索功能,用戶可以同時查詢不同業務生成的日志數據,進行比對和分析,全面了解業務運行情況。這樣的功能有助于提高故障排查和問題診斷的效率,促進系統運行的穩定性和可靠性。


6)日志高效排障,快速定位問題

日志最為典型和核心的應用場景之一便是用于排障。通過利用日志,快速定位問題并走完排障的“最后一公里”。在查詢日志時,以下步驟可以幫助實現高效定位問題:

  1. 確定問題:首先要明確正在解決的問題是什么,明確問題有助于縮小日志查詢范圍,集中精力查找與問題相關的日志。
  2. 確定日志源確定產生問題日志的應用程序、系統組件或服務。這將幫助篩選日志源并減少查詢范圍。
  3. 使用過濾器和關鍵字搜索:通過日志工具,根據問題的特征或關鍵字使用過濾器和搜索功能。這將有助于快速篩選出與問題相關的日志條目。
  4. 時間范圍限制:確定問題發生的時間范圍,并將查詢限制在這個時間段內。這將減少查詢的數據量,提高定位問題日志的速度。
  5. 關注錯誤和警告:錯誤和警告日志通常是問題跡象最明顯的地方。查看這些記錄,是否包含與問題相關的錯誤消息或警告提示。
  6. 日志上下文:對于找到的問題日志條目,查看其上下文信息。通常日志條目提供有關請求、響應或其他事件的上下文相關信息,有助于更好地理解問題的背景及其成因。

除了以上步驟外,還可以利用人工智能(AI)能力和可觀測上下游聯動能力,進一步縮小日志查詢的時間和空間范圍,進一步提高故障定位效率。


7)智能化日志聚類能力

企業日志數量一般相當大,每天可能產生TB級別的日志數。當工程師需要從千萬條日志數據中尋找異常日志進行問題定位時,時間成本很高。在這種情況下,如果日志工具提供了日志聚類能力,那么千萬條日志數據就可以聚合成十幾種格式類型,提高信息密度。這將使工程師避免查找重復日志而浪費大量時間。


8)可觀測上下游聯動

基于可觀測系統設計模式,可以將指標數據、鏈路數據與日志數據進行打標關聯。這樣做的好處是,當在上游發現指標或鏈路數據異常時,在排障過程中可以直接下鉆定位到關聯的下游日志數據,省去了在千萬條日志中查找異常日志的過程,大大提高了定位問題的速度。

云原生時代IT可觀測的三大支柱數據:Metrics,Tracing,Logging,日志數據在其中承擔著排障的“最后一公里”的角色,基于其信息量大的特點,為研發、運維提供最直接且詳盡的視角,深入了解IT系統運行的細節信息。

隨著可觀測體系的技術發展,可觀測三大數據的融合和串聯,已經成為提升日志價值信息密度的重要手段,前端的Metrics,Tacing數據就宛如快捷的交通工具,而排障的“最后一公里”就需要依賴日志數據來支撐,融合串聯,快速定位關鍵信息點。

實現排障的“最后一公里”,需要在數據采集、數據監控、數據告警、數據分析四個層面上進行Metrics、Tracing、Logging的融合打通。

  • 數據采集需要支持將日志和資源實例、Trace進行關聯,能識別出該條日志是哪個資源實例產生的,以及關聯的Trace ID和Span ID。
  • 數據監控需要支持在一個策略內同時檢測Metrics、Tracing、Logging,并可自由組合各類數據閾值進行告警通知相關人員。例如,應用系統日志發生異常,但操作系統、中間件和數據庫指標都正常,則告警通知該應用系統的業務運維人員。
  • 數據告警需要支持通過告警事件下鉆查看相關的Metrics、Tracing、Logging,協助運維人員快速定位故障問題,無需運維人員耗費時間去尋找關聯的可觀測數據。
  • 數據分析需要在觀測場景或數據查詢分析頁面,支持Metrics、Tracing、Logging之間的互相跳轉,以便故障排查和業務分析。

因此企業在建設可觀測日志體系時,建議選用覆蓋完整,且各類觀測工具可自由組合的可觀測平臺,因為這些平臺往往從一開始就會考慮幾種數據之間的融合設計,不僅數據之間可以實現融合打通,UI界面上的串聯排障過程也很絲滑,避免煙囪式建設。


同時以融合理念進行設計的產品,企業可以根據自身現狀分批、分階段建設,有效控制建設成本,實現最終的可觀測體系建設,讓企業能夠順利轉型過渡。


9)深度挖掘日志價值,解鎖數據潛力

日志數據是故障排除的關鍵,但僅保存日志是遠遠不夠的。由于日志數據包含了豐富全面的信息,因此我們可以通過挖掘日志數據來實現以下場景:

全監控
  • 借助日志數據信息豐富詳細的特點,實現對企業系統的訪問記錄、安全漏洞、惡意攻擊、網絡犯罪等的監控。日志中可能包含有關攻擊者行為的詳細信息,企業可以通過日志監控及時發現潛在的安全威脅,并采取相應的措施進行防范和應對。
故障定位和診斷
  • 日志是診斷故障的重要工具。當系統出現故障時,運維人員可以通過分析日志文件來查找故障原因。日志中可能包含有關系統運行狀態、處理請求時的錯誤、訪問權限等信息,輔助運維人員快速定位和解決問題。
性能優化
  • 日志可以幫助運維人員監測系統的性能,找出系統瓶頸并進行優化。通過分析日志,運維人員可以識別系統處理請求時的常見錯誤、延遲等問題,并采取相應的措施來優化系統性能。
合規審計
  • 許多企業和組織需要遵守相關的法律法規和標準,例如金融監管要求日志審計。日志建設可以幫助管理員確保滿足這些法規和標準的要求,例如對數據進行適當的保護和管理。
開發和維護
  • 伴隨云原生時代的到來,許多企業的應用系統敏捷開發、快速迭代,頻繁的業務變更增加了運維人員定位故障問題的難度。日志建設可以幫助開發團隊和運維團隊更好地理解和調試系統。在開發和維護過程中,開發人員和運維人員可以通過分析日志來查找和解決問題,并優化系統的性能和穩定性。
業務分析
  • 通過將業務指標數據與相應的日志數據進行關聯,可以深入了解業務指標的影響因素,找出影響業務績效的關鍵日志事件,并采取對應的業務運營措施。



05. 結語

綜上所述,在當今數字化時代,日志數據的重要性不容忽視。通過建立完善的日志體系,并利用各類觀測工具進行數據融合,企業可以實現安全監控、故障定位、性能優化、合規審計、開發維護以及業務分析等多方面的價值。而充分挖掘日志數據潛力,有助于企業更有效地管理和優化系統運營,促進持續發展。因此,日志體系的建設將成為企業數據管理和運營中不可或缺的戰略舉措。

免費申請演示

聯系我們

服務熱線:

020-38847288

QQ咨詢:

3593213400

在線溝通:

立即咨詢
查看更多聯系方式

申請演示

請登錄后在查看!