pos機服務(wù)器異常,基于運維日志異常檢測 AIOps 落地實踐

 新聞資訊  |   2023-07-02 12:19  |  投稿人:pos機之家

網(wǎng)上有很多關(guān)于pos機服務(wù)器異常,基于運維日志異常檢測 AIOps 落地實踐的知識,也有很多人為大家解答關(guān)于pos機服務(wù)器異常的問題,今天pos機之家(www.rcqwhg.com)為大家整理了關(guān)于這方面的知識,讓我們一起來看下吧!

本文目錄一覽:

1、pos機服務(wù)器異常

pos機服務(wù)器異常

作者:京東科技 張憲波、張靜、李東江

基于 NLP 技術(shù)對運維日志聚類,從日志角度快速發(fā)現(xiàn)線上業(yè)務(wù)問題

日志在 IT 行業(yè)中被廣泛使用,日志的異常檢測對于識別系統(tǒng)的運行狀態(tài)至關(guān)重要。解決這一問題的傳統(tǒng)方法需要復(fù)雜的基于規(guī)則的有監(jiān)督方法和大量的人工時間成本。我們提出了一種基于自然語言處理技術(shù)運維日志異常檢測模型。為了提高日志模板向量的質(zhì)量,我們改進特征提取,模型中使用了詞性(PoS)和命名實體識別(NER)技術(shù),減少了規(guī)則的參與,利用 NER 的權(quán)重向量對模板矢量進行了修改,分析日志模板中每個詞的 PoS 屬性,從而減少了人工標注成本,有助于更好地進行權(quán)重分配。為了修改模板向量,引入了對日志模板標記權(quán)重的方法,并利用深度神經(jīng)網(wǎng)絡(luò) (DNN) 實現(xiàn)了基于模板修正向量的最終檢測。我們的模型在三個數(shù)據(jù)集上進行了有效性測試,并與兩個最先進的模型進行了比較,評估結(jié)果表明,我們的模型具有更高的準確度。

日志是記錄操作系統(tǒng)等 IT 領(lǐng)域中的操作狀態(tài)的主要方法之一,是識別系統(tǒng)是否處于健康狀態(tài)的重要資源。因此,對日志做出準確的異常檢測非常重要。日志異常一般有三種類型,即異常個體日志、異常日志序列和異常日志定量關(guān)系。我們主要是識別異常個體日志,即包含異常信息的日志。

一般來說,日志的異常檢測包括三個步驟:日志解析、特征提取和異常檢測。

1)解析工具提取的模板是文本數(shù)據(jù),應(yīng)將其轉(zhuǎn)換為數(shù)字數(shù)據(jù),以便于輸入到模型中。為此,特征提取對于獲得模板的數(shù)字表示是必要的。

2)在模板特征提取方面,業(yè)界提出了多種方法來完成這一任務(wù)。獨熱編碼是最早和最簡單的方法之一,可以輕松地將文本模板轉(zhuǎn)換為便于處理的數(shù)字表示,但是獨熱編碼是一種效率較低的編碼方法,它占用了太多的儲存空間來形成一個零矢量,而且在使用獨熱編碼時,忽略了日志模板的語義信息。除了這種方便的編碼方法外,越來越多的研究人員應(yīng)用自然語言處理 (NLP) 技術(shù)來實現(xiàn)文本的數(shù)字轉(zhuǎn)換,其中包括詞袋,word2vec 等方法。雖然上述方法可以實現(xiàn)從文本數(shù)據(jù)到數(shù)字數(shù)據(jù)的轉(zhuǎn)換,但在日志異常檢測方面仍然存在一些缺陷。詞袋和 word2vec 考慮到模板的語義信息,可以有效地獲得單詞向量,但是它們?nèi)狈紤]模板中出現(xiàn)的每個模版詞的重要性調(diào)節(jié)能力。此外,深度神經(jīng)網(wǎng)絡(luò) (DNN) 也被用于模板的特征提取。

我們的模型主要改進特征提取,同時考慮每個標記的模版詞語義信息和權(quán)重分配,因為標記結(jié)果對最終檢測的重要性不同。我們利用兩種自然語言處理技術(shù)即 PoS 和命名實體識別 (NER),通過以下步驟實現(xiàn)了模板特征的提取。

具體來說,首先通過 FT-Tree 將原始日志消息解析為日志模板,然后通過 PoS 工具對模板進行處理,獲得模板中每個詞的 PoS 屬性,用于權(quán)重向量計算。同時,通過 word2vec 將模板中的標記向量化為初始模板向量,并利用權(quán)值向量對初始模板向量進行進一步修改,那些重要的模版詞的 PoS 屬性將有助于模型更好地理解日志含義。對于標記完 PoS 屬性的模版詞,詞對異常信息識別的重要性是不同的,我們使用 NER 在模版的 PoS 屬性中找出重要性高的模版詞,并且被 NER 識別為重要的模版詞將獲得更大的權(quán)重。然后,將初始模板向量乘以這個權(quán)重向量,生成一個復(fù)合模板向量,輸入到 DNN 模型中,得到最終的異常檢測結(jié)果。為了減少對日志解析的人力投入,并為權(quán)重計算做準備,我們采用了 PoS 分析方法,在不引入模板提取規(guī)則的情況下,對每個模板詞都標記一個 PoS 屬性。

解析模板的特征提取過程是異常檢測的一個重要步驟,特征提取的主要目的是將文本格式的模板轉(zhuǎn)換為數(shù)字向量,業(yè)界提出了各種模板特征提取方法:

One-hot 編碼:在 DeepLog 中,來自一組 k 模板 ti,i∈[0,k)的每個輸入日志模板都被編碼為一個 One-hot 編碼。在這種情況下,對于日志的重要信息 ti 構(gòu)造了一個稀疏的 k 維向量 V = [ v0,v1,... ,vk-1] ,并且滿足 j 不等于 i, j∈[0,k),使得對于所有 vi= 1 和 vj = 0。

** 自然語言處理 (NLP):** 為了提取日志模板的語義信息并將其轉(zhuǎn)換為高維向量,LogRobust 利用現(xiàn)成的 Fast-Text 算法從英語詞匯中提取語義信息,能夠有效地捕捉自然語言中詞之間的內(nèi)在關(guān)系 (即語義相似性) ,并將每個詞映射到一個 k 維向量。使用 NLP 技術(shù)的各種模型也被業(yè)界大部分人使用,如 word2vec 和 bag-of-words 。

** 深度神經(jīng)網(wǎng)絡(luò)(DNN):** 與使用 word2vec 或 Fast-Text 等細粒度單元的自然語言處理 (NLP) 不同,LogCNN 生成基于 29x128codebook 的日志嵌入,該 codebook 是一個可訓練的層,在整個訓練過程中使用梯度下降進行優(yōu)化。

**Template2Vec:** 是一種新方法,基于同義詞和反義詞來有效地表示模板中的詞。在 LogClass 中,將經(jīng)典的加權(quán)方法 TF-IDF 改進為 TF-ILF,用逆定位頻率代替逆文檔頻率,實現(xiàn)了模板的特征構(gòu)造。

3)一段原始日志消息是一個半結(jié)構(gòu)化的文本,比如一個從在線支付應(yīng)用程序收集的錯誤日志讀取為: HttpUtil-request 連接失敗,Read timeout at jave.net。它通常由兩部分組成,變量和常量 (也稱為模板)。對于識別個體日志的異常檢測,目的是從原始日志解析的模板中識別是否存在異常信息。我們的模型使用 PoS 分析以及 NER 技術(shù)來進行更精確和省力的日志異常檢測。PoS 有助于過濾標記有不必要的 PoS 屬性的模版詞,NER 的目標是將重要性分配給所有標記為重要的 PoS 屬性的模版詞。然后通過模板向量和權(quán)向量的乘積得到復(fù)合模板向量。

我們的日志異常檢測模型包括六個步驟,即模板解析、 PoS 分析、初始向量構(gòu)造、基于 NER 的權(quán)重計算、復(fù)合向量和最終檢測。檢測的整個過程如圖 1 所示:

第一步:模板解析

初始日志是半結(jié)構(gòu)化的文本,它們包含一些不必要的信息,可能會造成混亂或阻礙日志檢測。因此,需要預(yù)處理來省略變量,比如一些數(shù)字或符號,并提取常量,即模板。以前面提到的日志消息為例,原始日志 HttpUtil-request 連接 [wx/v1/pay/prepay] 的模板失敗,Read timeout at jave.net??梢蕴崛椋?HttpUtil 請求連接 * 失敗讀取時間為 * 。我們使用簡單而有效的方法 FT-Tree 來實現(xiàn)日志解析,我們沒有引入復(fù)雜的基于規(guī)則的規(guī)則來去除那些不太重要的標記,比如停止詞。

第二步:PoS 分析

上一步的模版解析結(jié)果只有英語單詞、短語和一些非母語單詞保留在解析好的模板中,這些模版詞具有各種 PoS 屬性,例如 VB 和 NN。根據(jù)我們對大量日志模板的觀察,一些 PoS 屬性對于模型理解模板所傳達的意義很重要,而其他屬性可以忽略。如圖 3 所示,解析模板中的單詞 “at” 在理論上是不必要的,相應(yīng)的 PoS 屬性 “ IN” 也是不必要的,即使去掉 IN 的標記,我們?nèi)匀豢梢耘袛嗄0迨欠裾?。因此,在我們得到?PoS 向量之后,我們可以通過去掉那些具有特定 PoS 屬性的模版詞來簡化模板。剩余的模版詞對于模型更好地理解模板內(nèi)容非常重要。

第三步:初始模板向量構(gòu)造

在獲得 PoS 矢量的同時,模板也被編碼成數(shù)字向量。為了考慮模板的語義信息,在模型中使用 word2vec 來構(gòu)造模板的初始向量。該初始向量將與下一步得到的權(quán)重向量相乘,得到模板的復(fù)合優(yōu)化表示。

第四步: 權(quán)重分析

首先對模板中的模版詞進行 PoS 分析處理,剔除無意義的模版詞。至于其余的模版詞,有些是關(guān)鍵的,用于傳達基本信息,如服務(wù)器操作、健康狀態(tài)等。其他的可能是不太重要的信息,比如動作的對象、警告級別等等。為了加大模型對這些重要模版詞的學習力度,我們構(gòu)造了一個權(quán)重向量來突出這些重要的模版詞。為此,我們采用了 NER 技術(shù),通過輸入已定義的重要實體,學習挑選標記為重要實體的所有模版詞。該過程如圖所示:

CRF 是 NER 通常使用的工具,它也被用于我們的模型識別模版詞的重要性。也就是說,通過向模型提供標記為重要的模版詞,模型可以學習識別那些未標注的日志的重要的模版詞。一旦模板中的模版詞被 CRF 識別出來,相應(yīng)的位置就會賦予一個權(quán)重值 (2.0)。因此,我們得到一個權(quán)向量 W。

第五步:復(fù)合向量

在獲得權(quán)重向量 W 之后,通過將初始向量 V’乘以權(quán)重向量 W,可以得到一個表示模板的復(fù)合優(yōu)化向量 V。重要的模版詞分配更大權(quán)重,而其他的模版詞分配更小的。

第六步:異常檢測

將第五步得到的復(fù)合矢量 v 輸入到最終全連接層中,以便進行異常檢測。完全連通層的輸出分別為 0 或 1,表示正?;虍惓!?/p>

? 模型評估

我們通過實驗驗證了該模型對日志異常檢測的改進效果。采用了兩個公共數(shù)據(jù)集,以及一套我們內(nèi)部數(shù)據(jù)集,來驗證我們模型的實用性。我們將自己的結(jié)果與業(yè)界針對日志異常檢測提出的兩個 Deeplog 和 LogClass 模型進行了比較。

CANet 的框架是用 PyTorch 構(gòu)建的,我們在 35 個訓練周期中選擇新加坡隨機梯度下降 (SGD) 作為優(yōu)化器。學習速度設(shè)定為 2e4。所有的超參數(shù)都是從頭開始訓練的。

**(1)數(shù)據(jù)集:** 我們選取了兩套公共集和一套公司內(nèi)部數(shù)據(jù)集進行模型評估,BGL 和 HDFS 都是用于日志分析的兩個常用公共數(shù)據(jù)集:**HDFS:是從運行基于 Hadoop 的作業(yè)的 200 多個 Amazon EC2 節(jié)點收集的。它由 11,175,629 條原始日志消息組成,16,838 條被標記為 “異?!?/strong>。BGL:** 收集自 BlueGene/L 超級計算機系統(tǒng) ,包含 4,747,963 條原始日志消息,其中 348,469 條是異常日志。每條日志消息都被手動標記為異?;蛘哒!?* 數(shù)據(jù)集 A:** 是從我們公司內(nèi)部收集來進行實際驗證的數(shù)據(jù)集。它包含 915,577 條原始日志消息和 210,172 條手動標記的異常日志。

**(2)base 模型:** 我們將自己的模型在三個數(shù)據(jù)集上,與兩個業(yè)界最先進的模型 (DeepLog 和 LogClass) 進行比較:DeepLog: 是一個基于深度神經(jīng)網(wǎng)絡(luò)的模型,利用長短期記憶 (LSTM) 來實現(xiàn)檢測。DeepLog 采用一次性編碼作為模板向量化方法。LogClass: LogClass 提出了一種新的方法 —— 逆定位頻率 (ILF) ,在特征構(gòu)造中對日志文字進行加權(quán)。這種新的加權(quán)方法不同于現(xiàn)有的反文檔頻率 (IDF) 加權(quán)方法。

**(3)模型評估結(jié)果:** 我們從 Precision、Recall 和 F1-score 三個方面評估兩個 base 模型和我們的模型的異常檢測效果,在 HDFS 數(shù)據(jù)集上,我們的模型獲得了最高的 F1 得分 0.981,此外,我們的模型在召回方面也表現(xiàn)最好。LogClass 在 Precision 上取得了最好的成績,比我們的稍微高一點。在第二套數(shù)據(jù)集 BGL 上,我們的模型在召回率 Recall (0.991) 和 F1-score (0.986) 方面表現(xiàn)最好,但在 Precision 上略低于 LogClass。在第三套數(shù)據(jù)集 A 上三個模型的性能,我們的模型實現(xiàn)了最佳性能,其次是 LogClass。

在所有的數(shù)據(jù)集中,我們的模型具有最好的 F1 得分和最高的召回率,這意味著我們的模型造成的不確定性更小。

?Natural Language Processing-based Model for Log Anomaly Detection. SEAI.

?**ieeexplore 檢索:**https://ieeexplore.ieee.org/abstract/document/9680175

?Themis 智能運維平臺智能文本分析功能視圖:(http://jdtops.jd.com/

以上就是關(guān)于pos機服務(wù)器異常,基于運維日志異常檢測 AIOps 落地實踐的知識,后面我們會繼續(xù)為大家整理關(guān)于pos機服務(wù)器異常的知識,希望能夠幫助到大家!

轉(zhuǎn)發(fā)請帶上網(wǎng)址:http://www.rcqwhg.com/news/76999.html

你可能會喜歡:

版權(quán)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻,該文觀點僅代表作者本人。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔相關(guān)法律責任。如發(fā)現(xiàn)本站有涉嫌抄襲侵權(quán)/違法違規(guī)的內(nèi)容, 請發(fā)送郵件至 babsan@163.com 舉報,一經(jīng)查實,本站將立刻刪除。