999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

系統日志故障預測中的ELK與LSTM應用與實踐①

2020-07-25 01:47:32徐志斌郜義浩
計算機系統應用 2020年7期
關鍵詞:文本故障模型

徐志斌,葉 晗,王 晗,郜義浩

1(北京市首都公路發展集團有限公司,北京 100161)

2(北京云星宇交通科技股份有限公司,北京 100078)

1 引言

隨著現實業務規模的擴大,對應的信息系統也變得越來越復雜.另一方面,業務人員對于系統穩定性的要求卻越來越高,這對運維的質量提出了很高的挑戰.一旦業務系統發生故障,運維人員很難精準定位故障發生的原和快速修復系統.傳統監控系統通常難以發現潛在的故障,因為在業務系統非常復雜的情況下,每一時刻都會產生大量有關或無關的運行狀態數據、日志數據,使得通過規則編碼或者人工排查進行故障預警變得越來越不顯示.

本文通過兩個步驟完成基于日志的系統故障預警工作的研究.包括:

(1)借助ELK平臺收集匯總各個系統中的日志,實現日志的集中化管理.這樣一方面可以方便運維人員的日常查詢、搜索、管理日志,提高運維效率.另一方面也可提供后續研究打下數據基礎,為日志預警模型篩選出確實有效的原始數據.

(2)基于LSTM模型,通過對原始數據的清洗、規范化等工作,結合歷史環境下系統相關告警信息,進而訓練得到基于日志的故障預警模型.

研究內容對于發現潛在故障,快速定位故障來源,準確識別故障原因,縮短故障恢復時間,提高運維人員工作效率都具有一定的幫助.

2 研究現狀

2.1 日志分析工具

傳統上通常直接使用Shell或者Python 腳本對單機日志進行分析.當這種方式不能滿足海量日志分析要求的時候,分布式的日志采集、分析系統應運而生,并且逐漸成為了各大互聯網企業的標準配置[1].

當前主流的日志管理系統通常由采集端和服務端兩部分構成.采集端通常為在各主機安裝的代理(agent)或客戶端應用(client),這些代理或客戶端將采集到的日志數據推送到服務端.服務端則實現方式眾多,有的單純提供存儲、查詢功能,也有提供存儲、計算分析、查詢等復雜功能的龐大的分布式系統[2,3].

常見的日志管理系統有Cloudera 開源的Flume[4],Elastic[5]公司開源的ELK Facebook 開源的Scribe[6]和Apache的Chukwa[7]等.本文選用Elastic公司開源的ELK 套件來實現日志的采集、查詢和管理.

2.2 深度學習及框架

深度學習(deep learning)是機器學習的分支,是一種以人工神經網絡為架構,對數據進行表征學習的算法.其最大的好處是使用無監督或半監督的特征學習和分層特征提取算法來替代手工獲取特征,從而大大減少研究人員對研究領域知識的依賴.

當前深度學習中有很多成功的模型,例如深度神經網絡、卷積神經網絡、循環神經網絡等等.這些模型廣泛應用于多個研究領域,在計算機視覺、語音識別、自然語言處理以及生物信息學等領域都取得了極好的效果.

針對各種成熟的深度學習模型,研究者們提出了多種不同的框架,目前使用最廣泛的包括TensorFlow、Caffe、Keras、PyTorch 等.其中TensorFlow 由Google公司出品,TensorFlow框架更新維護頻繁,同時具備python與C++接口,同時具備完整教程,收到了廣大開發工作者和學術人員的青睞,目前已經成為深度學習框架中最受歡迎的選擇.本文所有模型訓練工作均采用TensorFlow框架完成.

3 模型選型與模型構建

3.1 模型選型

(1)CNN

CNN 開始普遍用于圖像識別中,Yoon Kim在2014年提出了TextCNN,將卷積神經網絡CNN應用于文本分類中,利用多個不同size的Kernel 來提取句子中的關鍵信息.但CNN 有個最大問題是固定filter_size的視野,filter_size的超參調節很繁瑣.另外由于CNN的特性,TextCNN 對詞的順序很不敏感,無法從上下文中獲取信息.

(2)RNN

RNN模型結構最大的特點在于會將上一時刻的結果作為當前時刻的輸入,基本模型結構可以用以下公式表示:

其中,ht為當前時刻輸出,ht?1為上一時刻輸出,xt為當前時刻輸入,W即為需要訓練的權重[8].

RNN相比于CNN在文本上最大的優勢在于考慮到了上文的信息.從公式中可以看出,t時刻的輸出與1,2,···,t?1全部有關,但這也同時導致ht是由一系列W連乘得到的,進而引發梯度消失和梯度爆炸的問題.因此,當文本的篇幅比較長的時候,RNN的缺點就會凸顯出來.日志信息往往攜帶者一連串的報錯文本,RNN難以滿足當前要求[9].

(3)LSTM

LSTM (Long Short-Term Memory)可以認為是RNN的一種特殊形式,模型結構如圖1所示.

圖1 LSTM網絡模型結構

LSTM模型通過門控狀態來對信息進行選擇性的記憶,滿足了需要長時間記憶信息和遺忘信息的需求.

LSTM彌補了RNN在長文本中存在的缺點,即可以選擇性遺忘不重要的信息,在長文本中只保留重要信息的關聯性.本文基于日志的故障預測模型就是以LSTM為基礎完成的.

3.2 模型構建

深度學習模型構建可以簡化為4部分內容,即模型結構的選擇、激活函數的選擇、損失函數的選擇以及下降梯度的選擇.本文在模型上使用標準的LSTM模型,在模型結構上不需要進行額外設定.

模型在損失函數上采用Softmax,即交叉熵損失,相比于范數損失、均方誤差等,交叉熵損失在分類上收斂速度要更加迅速.

圖2 日志文件信息

模型在梯度下降上采用SGD的方式.需要提及的是這里分別使用過Adam算法、AdaDelta算法和幾種GD方法.Adam與AdaDelta方法雖然收斂速度更快,但是由于訓練數據本身的質量一般,最終模型的準確率往往很差,而GD的收斂速度雖然最慢,但最終得到的效果要優于其他幾項,為了避免GD出現局部最優的現象,最終選定SGD方法.

4 系統案例分析

本文選取首發集某業務系統作為試點,實現系統基于日志的故障預測完整流程,包括日志分析、日志處理、模型訓練與驗證工作.

4.1 日志文件分析

該業務系統的不同日志文件中,雖然告警內容的格式也有所不同,但告警信息內容的結構基本上是相同的.

如圖2所示,所有告警日志基本包含以下幾部分內容.

(1)ERROR_time:告警日志產生的時間

(2)ERROR_label:告警標簽,顯示當前錯誤的類別,這個類別信息是日志自己生成的,而非通過告警產生的人工標簽.

(3)ERROR_label_detection:部分告警會有簡單的描述或解釋,這一部分信息不是必須的.

(4)ERROR_content:告警內容本身,這是用于模型訓練的關鍵數據.

4.2 模型訓練

(1)數據準備

本文總共選取了18年1整年的tomcat告警日志作為訓練數據,日志每天產生告警信息20~50條不等,共計訓練數據8000多條.同時通過采集到的告警信息對日志數據進行標定,將數據分為產生預警和不產生預警兩類.

(2)數據處理

對日志數據進行處理,包括結構化、時間格式標準化、日志格式轉化、文本序列化、文本長度截取等工作,最終得到可以直接進入模型的訓練數據.

(3)參數調整

模型主要需要調整的參數包括隱層數量、遺忘門偏置(drop值)、最大序列化值(embedding_size)以及最大文本長度.

隱層數量決定模型可以識別內容的復雜程度上限,層數越多可以完成的分類越復雜,但是耗費的時間與資源也會相應增加,經過調整,隱層數量為40時已經可以滿足模型預測目標.

遺忘門偏置一般要求大于等于1.0即可,當模型容易陷入局部最優時可以適當增大,本文在構建模型時已經選擇了不易出現局部最優的SGD 梯度,因此設置為1.0即可.

embedding_size的合理大小是需要在模型訓練過程中不斷去調整的,值過大會導致加入很多干擾項,影響模型準確率;值過小則進入訓練的數據信息太小,同樣會造成模型準確率下降.經過反復調試,故障預警模型的embedding_size在800~1000之間準確率最高,目前模型的embedding_size值為1000.

最大文本長度同樣會影響最終訓練模型的質量,一般情況下的最大文本長度可以設置為最長文本的60%到70%左右,但對于日志文件來說不同文件間的長度差異過大,需要反復多次試驗才能得到最佳值,本次故障預警模型使用的最大文本長度為500.

對于不同模型也需要對上述參數反復調整,最終保證訓練模型達到最優.

(3)模型訓練

模型開始訓練后會輸出運算步數以及loss值,作為準確率參考依據,如圖3所示.

圖3 訓練過程樣例

當step增加到一定程度后,模型的loss值就不再下降了,一般情況下需要經過3W-5W次的迭代.模型訓練最終生成文件樣例如圖4.

4.3 結果驗證

模型訓練完成后隨機選取4096條未進行訓練的數據進行故障預警模型測試.

測試結果如圖5所示.

圖5 故障預測模型測試集準確率

圖5中左側表示日志實際分類狀態,右側表示日志預測分類狀態,測試數據共計4096條,其中識別正確的數據為3376條,故障預測模型最終準確率為82%.

5 結論

本文首先采用ELK工具實現了日志采集、存儲工作,為后續故障識別與模型訓練提供基礎.之后,使用這些日志在TensorFlow框架中對標準LSTM模型進行訓練,最終實現故障識別模型.經測試,障預測模型最終準確率為82%,準確性良好.

本文采用的整套流程具備很強的可操作性,可用于實際系統相關的故障預測工作,可為運維人員提供工作效率、保障業務系統穩定性提供一定幫助.同時也存在一些不足,例如尚未考慮日志與日志、告警與告警之間的關聯性問題,模型訓練中未對詞匯表的進一步研究與調整工作等,這些都可以作為后續的研究內容,幫助進一步提升模型的準確率.

猜你喜歡
文本故障模型
一半模型
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
故障一點通
在808DA上文本顯示的改善
基于doc2vec和TF-IDF的相似文本識別
電子制作(2018年18期)2018-11-14 01:48:06
3D打印中的模型分割與打包
奔馳R320車ABS、ESP故障燈異常點亮
文本之中·文本之外·文本之上——童話故事《坐井觀天》的教學隱喻
故障一點通
主站蜘蛛池模板: 国产高清免费午夜在线视频| 午夜激情婷婷| 免费国产黄线在线观看| 日韩成人在线一区二区| 自拍中文字幕| 国产中文一区a级毛片视频| 国产精品三区四区| 成人在线第一页| 波多野结衣第一页| 亚洲精品视频免费观看| 国产91线观看| 欧美精品色视频| 色婷婷在线播放| 亚洲第一区在线| 欧美日韩福利| 国产美女91视频| 国产精品蜜芽在线观看| 欧美亚洲国产日韩电影在线| 97久久超碰极品视觉盛宴| 超碰aⅴ人人做人人爽欧美| 亚洲另类第一页| 国产激情影院| 精品久久香蕉国产线看观看gif| 操操操综合网| 亚洲精品午夜天堂网页| 麻豆精品国产自产在线| 婷婷五月在线| 国产69囗曝护士吞精在线视频| 日韩 欧美 小说 综合网 另类| 男人天堂亚洲天堂| 日韩国产一区二区三区无码| 欧美成人精品高清在线下载| 911亚洲精品| 精品無碼一區在線觀看 | 91麻豆国产精品91久久久| 在线综合亚洲欧美网站| 2022国产无码在线| 亚洲大尺度在线| 亚洲一区毛片| 日韩免费视频播播| 亚洲美女视频一区| 亚洲综合一区国产精品| 亚洲妓女综合网995久久| 精品久久香蕉国产线看观看gif| 91成人在线免费视频| 亚洲区第一页| 三级国产在线观看| 69视频国产| 国产日本欧美在线观看| 亚洲免费三区| 这里只有精品在线| 最新国产麻豆aⅴ精品无| 国产成年无码AⅤ片在线| 色色中文字幕| 青青草国产精品久久久久| 99视频精品全国免费品| 国产v欧美v日韩v综合精品| 精品午夜国产福利观看| 日本伊人色综合网| 夜夜高潮夜夜爽国产伦精品| 中文字幕无码制服中字| 国产精品播放| 狠狠亚洲婷婷综合色香| 欧亚日韩Av| 欧美一区二区三区香蕉视| 91视频区| 色综合激情网| 99久久精品视香蕉蕉| 色噜噜在线观看| 伊人久久久大香线蕉综合直播| 最近最新中文字幕在线第一页| 亚洲女同一区二区| 9966国产精品视频| 亚洲日韩AV无码一区二区三区人| 99国产精品一区二区| 欧美性猛交一区二区三区| 日韩大片免费观看视频播放| 99er这里只有精品| 亚洲精品中文字幕午夜| 国产内射在线观看| 色偷偷一区二区三区| 国产精品久久久久久搜索|