使用ARMS告警管理集成多個(gè)告警源后,您可以通過設(shè)置事件處理流將告警源產(chǎn)生的事件進(jìn)行過濾和分類。本文介紹如何創(chuàng)建事件處理流。

新建事件處理流

  1. 登錄ARMS控制臺(tái)
  2. 在左側(cè)導(dǎo)航欄中選擇告警管理 > 事件處理流
  3. 事件處理流頁面單擊右上角的新建處理流
  4. 新建處理流頁面的基本信息區(qū)域輸入處理流名稱。
  5. 流動(dòng)作配置區(qū)域設(shè)置事件處理流程。
    1. 可用流程動(dòng)作區(qū)域的動(dòng)作拖至事件處理流區(qū)域。
    2. 在最右側(cè)區(qū)域設(shè)置事件處理流中各動(dòng)作的執(zhí)行條件。
      說明 動(dòng)作配置完成后可以在測(cè)試數(shù)據(jù)區(qū)域?qū)Ω婢侄芜M(jìn)行測(cè)試,驗(yàn)證動(dòng)作是否配置成功。
      動(dòng)作說明示例
      觸發(fā)條件滿足觸發(fā)條件的事件才會(huì)執(zhí)行當(dāng)前處理流。場(chǎng)景

      名稱為容器CPU使用率告警的集成執(zhí)行當(dāng)前處理流。

      動(dòng)作配置

      設(shè)置條件為_aliyun_arms_integration_name等于容器CPU使用率告警

      處理流觸發(fā)條件
      過濾事件滿足過濾條件的事件將會(huì)跳過當(dāng)前事件流,執(zhí)行下一個(gè)事件流,未過濾的事件將會(huì)繼續(xù)執(zhí)行當(dāng)前處理流。
      說明 如果您的告警規(guī)則還未產(chǎn)生事件,此時(shí)只能選擇到ARMS預(yù)置的_aliyun_arms_integration_id_aliyun_arms_integration_name字段進(jìn)行配置。如果您需要使用severity、alertname等事件字段,可以通過以下兩種方式配置:
      • 手動(dòng)輸入字段。
      • 添加告警規(guī)則,使其產(chǎn)生告警事件。產(chǎn)生事件后,即可以在此選擇事件字段值。
      場(chǎng)景

      P4等級(jí)的告警事件不執(zhí)行當(dāng)前處理流。

      動(dòng)作配置

      設(shè)置條件為severity等于P4

      處理流過濾事件
      識(shí)別事件類型根據(jù)選擇的事件字段值,通過算法識(shí)別出事件對(duì)象分類(Class)和事件類型(Type),用于事件和告警查詢統(tǒng)計(jì)。
      支持識(shí)別的事件對(duì)象分類(Class)如下:
      • 網(wǎng)絡(luò)(Network)
      • 存儲(chǔ)(Storage)
      • 計(jì)算(Compute)
      • 操作系統(tǒng)(OS)
      • 應(yīng)用(Application)
      • 數(shù)據(jù)庫(Database)
      • 變更(Change)
      支持識(shí)別的事件類型(Type)如下:
      • 可用性(Availability)
      • 時(shí)延
      • 容量(Capacity)
      • 錯(cuò)誤
      • 未知(Unknown)
      場(chǎng)景

      通過alertnamemessage字段值識(shí)別事件的對(duì)象分類(Class)和事件類型(Type)。

      動(dòng)作配置

      設(shè)置識(shí)別分類字段alertnamemessage

      處理流識(shí)別字段類型

      執(zhí)行結(jié)果

      系統(tǒng)會(huì)將智能識(shí)別結(jié)果寫入classtype標(biāo)簽。

      識(shí)別事件類型執(zhí)行結(jié)果
      設(shè)置事件等級(jí)將執(zhí)行當(dāng)前處理流的事件等級(jí)設(shè)置為特定值。場(chǎng)景

      將核心服務(wù)網(wǎng)絡(luò)類型的告警事件的等級(jí)設(shè)置為P1。

      動(dòng)作配置

      1. 設(shè)置觸發(fā)條件動(dòng)作為class等于network
      2. 設(shè)置事件等級(jí)動(dòng)作設(shè)置為P1。處理流設(shè)置事件等級(jí)

      執(zhí)行結(jié)果

      設(shè)置事件等級(jí)測(cè)試數(shù)據(jù)
      設(shè)置業(yè)務(wù)標(biāo)簽為執(zhí)行當(dāng)前處理流的事件設(shè)置業(yè)務(wù)標(biāo)簽(Label),用于事件和告警統(tǒng)計(jì)查詢。
      • 字段:將事件中的字段值作為label字段值。
      • 值:為label字段設(shè)置固定值。
      場(chǎng)景

      將告警等級(jí)作為告警標(biāo)簽,以便之后統(tǒng)計(jì)各等級(jí)的事件。

      動(dòng)作配置

      設(shè)置業(yè)務(wù)標(biāo)簽為字段:severity

      處理流設(shè)置業(yè)務(wù)標(biāo)簽

      執(zhí)行結(jié)果

      告警事件中將會(huì)新增label字段,label字段值為severity字段值。

      刪除字段刪除事件中的某些字段。場(chǎng)景

      告警事件中存在locationregion字段,location字段中已包含Region信息,需要?jiǎng)h除region字段。

      動(dòng)作配置

      設(shè)置刪除字段為region

      處理流刪除字段
      提取內(nèi)容通過正則表達(dá)式,提取事件中某字段的內(nèi)容,填充到新的字段中。場(chǎng)景
      告警字段:
      "location":"cn-hangzhou-hz4"

      提取location字段的地域和具體位置信息填充到regiondatacenter字段中。

      動(dòng)作配置

      • 待提取字段:location
      • 提取正則表達(dá)式:([a-zA-z]+-[a-zA-z]+)-(.*)
      • 填充的字符:regiondatacenter
      處理流提取內(nèi)容

      執(zhí)行結(jié)果

      提前內(nèi)容測(cè)試數(shù)據(jù)
      匹配更新當(dāng)系統(tǒng)檢測(cè)到事件的指定字段中存在某段內(nèi)容時(shí),就將設(shè)置的字段值填充到目標(biāo)字段中。場(chǎng)景
      告警字段:
      "message":"ping to i-bp1e42d0ydxf7pstuepz > 100ms"

      當(dāng)message中包含ping時(shí)表示當(dāng)前事件為網(wǎng)絡(luò)事件,則需要將當(dāng)前事件標(biāo)記為網(wǎng)絡(luò)類型。

      動(dòng)作配置

      • 匹配字段:message
      • 滿足下面條件時(shí)更新字段值:包含ping輸出network
        說明 包含的值可以使用實(shí)際字段值或正則表達(dá)式。
      • 填充到字段:class
      處理流匹配更新

      執(zhí)行結(jié)果

      匹配更新測(cè)試數(shù)據(jù)
      字段豐富通過調(diào)用API或者查詢本地Excel數(shù)據(jù)源的方式,將得到的結(jié)果填充到目標(biāo)字段中。
      說明 目前數(shù)據(jù)源功能仍在灰度中,請(qǐng)聯(lián)系告警釘釘答疑號(hào)(d9j_rg9e4062f)協(xié)助添加。
      場(chǎng)景

      根據(jù)告警事件中的IP字段,通過查詢上傳的Excel數(shù)據(jù)源,將得到的主機(jī)名填充到事件的hostname字段中。

      動(dòng)作配置

      • 選擇數(shù)據(jù)源:獲取Host數(shù)據(jù)源-excel
      • 匹配更新模式:ip(匹配Excel中列名)等于ip(對(duì)應(yīng)Excel中列值)
      • 填充到字段:$.hostName(Excel查詢返回結(jié)果得到的列名) 填充到hostname
      字段豐富
      替換內(nèi)容查找并替換指定字段中的字段內(nèi)容,可以正則表達(dá)式查找對(duì)指定字段內(nèi)容。場(chǎng)景

      將告警事件中的d.b.字符串替換為database字符串。

      動(dòng)作配置

      • 需要替換的內(nèi)容片段:message
      • 將內(nèi)容片段:d\.b\.
        說明 可以使用實(shí)際字段值或正則表達(dá)式。
      • 替換為:database
      處理流替換內(nèi)容

      執(zhí)行結(jié)果

      內(nèi)容替換測(cè)試數(shù)據(jù)
      分割內(nèi)容通過分割字符對(duì)字段進(jìn)行拆分,拆分結(jié)果填充到多個(gè)目標(biāo)字段中。場(chǎng)景
      告警字段:
      "message":"myhostid_myuserid_myruleid"

      message字段中的字段值拆分為hostiduseridruleid并分別填充到新的字段中。

      動(dòng)作配置

      • 需要拆分的字段:message
      • 分割字符:_
      • 拆分結(jié)果填充字段:hostIduserIdruleId
        說明 拆分后的字段將會(huì)按照順序填充。
      處理流分割內(nèi)容

      執(zhí)行結(jié)果

      分割內(nèi)容測(cè)試數(shù)據(jù)
      填充模板填入一段模板內(nèi)容(如:類型${class}的事件來源是${source}),變量名為事件集成后的字段名,模板渲染后填充到目標(biāo)字段中。場(chǎng)景
      告警字段:
      "source":"server",
      "class":"network"

      message字段設(shè)置為類型${class}的事件來源是${source},其中需要引用classsource字段值。

      動(dòng)作配置

      • 填充的模板:類型${class}的事件來源是${source}
      • 填充到字段:message
      處理流填充模板

      執(zhí)行結(jié)果

      填充模板測(cè)試數(shù)據(jù)
      丟棄丟棄執(zhí)行當(dāng)前處理流的事件,丟棄動(dòng)作只能作為當(dāng)前事件處理流最后一個(gè)節(jié)點(diǎn),且無需設(shè)置。
  6. 測(cè)試數(shù)據(jù)區(qū)域左側(cè)輸入測(cè)試字段和字段值,或者單擊從事件中選擇,從已有的告警事件中選擇測(cè)試事件,然后單擊點(diǎn)擊測(cè)試
  7. 設(shè)置完成后,單擊保存
    處理流新建完成后,集成的告警源將會(huì)按處理流順序完成事件的過濾,過濾后的事件可以在告警事件歷史頁面查看。更多信息,請(qǐng)參見查看告警事件歷史

管理事件處理流

事件流創(chuàng)建完成后,您可以在事件處理流頁面執(zhí)行以下操作:

  • 調(diào)整處理流順序:在目標(biāo)處理流右側(cè)操作列單擊上移下移
  • 啟動(dòng)或禁用處理流:在目標(biāo)處理流右側(cè)操作列單擊啟用停止
  • 更新處理流:在目標(biāo)處理流右側(cè)操作列單擊編輯
  • 刪除處理流:在目標(biāo)處理流右側(cè)操作列單擊刪除,在彈出的對(duì)話框中單擊確認(rèn)

查看處理后的告警事件

在控制臺(tái)左側(cè)導(dǎo)航欄選擇告警管理 > 告警事件歷史

告警事件歷史頁面可以查看所有告警事件,單擊事件名稱可以查看告警事件的詳細(xì)信息。更多信息,請(qǐng)參見查看告警事件歷史