日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

IDE日志分析方法pt。 2

發布時間:2023/12/3 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 IDE日志分析方法pt。 2 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

介紹

在第一部分中,我解釋了日志分析的理論方法,我認為這對維持工程師是最合適的。 這位工程師不需要在日志出現時立即對其進行分析,而是專注于對復雜問題的深入分析。 在第二部分中,我將展示一個復雜的模板可以涵蓋許多搜索場景,并展示一個可行的原型。

搜索對象模板

搜索模板的主要要求是它必須是復雜的,在最佳情況下必須非常復雜。 手動搜索越少越好。 復雜的模板應完成大部分工作并快速完成。 由于我們這里沒有任何服務器,因此僅預期可處理2-3 GB日志速度的開發人員PC也很重要。

主要正則表達式

模板應聲明一些正則表達式,這些正則表達式將在日志中搜索(使用Matcher.find)。 如果首先聲明多個,則收集第一個的結果,然后收集第二個的結果,等等。從最一般的意義上講,搜索結果是String數組– List <String>。

驗收標準

并非所有結果都被搜索過程接受。 例如,工程師可以搜索除“ X”以外的所有連接類型。 然后,他或她可以創建一個接受標準并過濾掉它們。 通過指定正則表達式“除X外的任何類型”。 另一種可能性是在時間間隔內搜索。 工程師可以搜索10到12個小時之間的任何日志記錄(他或她必須輸入完整的日期)。

尋找不同的表達也是可能的。 在這種情況下,工程師會指定一個以上的正則表達式(一般情況下會指定多個)。 一個例子將更好地解釋這個概念。

不同的正則表達式:

connection type (q|w)

主正則表達式找到的日志記錄:

connection type w found connection type q created connection type s destroyed connection type q found

獨特搜索的結果:

connection type w found connection type q created

參量

正則表達式的問題之一是,真正有用的正則表達式非常長且笨拙。 以下是日志中的樣本日期:

2018-08-06 10:32:12.234

這是它的正則表達式:

\d\d\d\d-\d\d-\d\d \d\d:\d\d:\d\d.\d\d\d

解決方案非常簡單–使用替代。 我稱它們為正則表達式的參數。 有些參數可能像記錄時間一樣是靜態的,但有些可以由用戶定義。 在執行之前,立即將參數替換為實際值。

觀看次數

搜索的結果是日志記錄,即類似

2018-08-06 10:32:12.234 [Thread-1] DEBUG - Connection 1234 moved from state Q to state W \r?\n

雖然找到模板中定義的內容非常好,但最好將信息分成有用的部分。 例如,此表以簡潔明了的方式表示該記錄中的所有有用信息:

問 -> w ^
連接 1234

要提取這些信息,我們可以使用“查看”方法。 這意味著聲明在日志記錄中搜索的較小的正則表達式,并返回一條有關日志記錄的信息。 就像該日志記錄的視圖一樣。 將所有內容顯示在表格中將使其更易于閱讀。 表也??可以按任何列排序。

排序與合并

使用模板進行此類搜索的最有效方法是使用線程池,并將每個線程分配給日志文件。 假設池中有3-4個線程,則搜索將加快3-4倍。 但是合并結果成為一個重要的問題。 這里可以有2個解決方案:

  • 合并結果 。 我們需要確保結果按正確的順序排列。 如果我們有3個日志文件,第一個覆蓋10-12個小時,第二個12-14,第三個14-17,則這些文件的搜索結果必須以相同的順序進行。 這稱為合并。
  • 排序結果 。 除了合并它們,我們還可以按日期和時間對其進行排序。 不太復雜但簡單。
  • 合并看起來是一種更高級的技術,它使我們可以保留記錄的原始順序。

    工作流程

    最后的想法

    在本文中達到這一點的每個人都必須困擾的問題是:是否有人試圖實現所有這些? 答案是肯定的! 有一個基于Eclipse框架的工作應用程序,其中包括Spring XML配置和許多其他內容。 搜索對象模板的工作方式如本文所述。

    這是Github鏈接:

    https://github.com/xaltotungreat/regex-analyzer-0

    為什么是0? 好吧,這本來應該是一個原型,但在某種程度上仍然是原型。 我稱這個應用程序為REAL

    [R egular
    ?Xpressions的
    分析儀 對于L OGS

    假定用戶具有一些如何導出Eclipse RCP應用程序或如何從Eclipse IDE中啟動它的知識。 不幸的是,我沒有足夠的時間來編寫有關它的任何好的文檔。 默認情況下,它可以分析HBase日志,并且config文件夾中有很多示例。

    翻譯自: https://www.javacodegeeks.com/2018/11/ide-approach-log-analysis-pt-2.html

    總結

    以上是生活随笔為你收集整理的IDE日志分析方法pt。 2的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。