基于阿里云日志服務的告警功能,您可以為接入Web應用防火墻(Web Application Firewall,簡稱WAF)并開啟了日志服務的防護對象配置自定義監控圖表和告警服務,對業務整體流量和安全狀態進行監控和告警。本文介紹如何通過日志服務為WAF配置監控與告警。

背景信息

本實踐提供了13個日志圖表和告警配置范例供您參考,分別是4XX比例(忽略攔截數據)、5XX比例異常告警、QPS異常告警、QPS突增告警、QPS突降告警、5分鐘內ACL攔截情況告警、5分鐘內WAF攔截情況告警、5分鐘內CC攔截情況告警、5分鐘內防掃描攔截情況、5分鐘內單IP攻擊量預警、5分鐘內單IP攻擊域名數量告警、5分鐘平均時延情況、UID維度流量突降告警場景。

前提條件

操作步驟

  1. 登錄Web應用防火墻控制臺,在頂部菜單欄,選擇WAF實例的資源組和地域(中國內地非中國內地)。
  2. 進入日志服務高級管理頁面。
    1. 在左側導航欄,單擊安全運營 > 日志服務。
    2. 日志服務頁面右上角,單擊高級管理。
    3. 在彈出的對話框中,單擊確定
  3. 創建WAF日志分析儀表盤。
    1. Project列表中,定位到要操作的WAF日志項目,單擊Project名稱。
    2. 輸入查詢語句,并單擊查詢/分析。
      說明 關于圍繞監控指標進行查詢/分析時用到的SQL查詢語句,請參見查詢與分析語句
    3. 查詢結束后,單擊日志字段下的儀表盤圖標,在統計圖表頁簽,單擊添加到儀表盤
    4. 添加到儀表盤對話框,完成以下配置,并單擊確定。
      配置項 說明
      操作類型 選擇新建儀表盤。
      布局模式 選擇儀表盤的布局模式。
      儀表盤名稱 設置儀表盤名稱。
  4. 配置日志圖表。
    1. 單擊儀表盤右上角的編輯
    2. 在儀表盤編輯模式下,根據需要編輯、刪除當前儀表盤中已有圖表或通過復制添加新的圖表。
      說明 您可以先通過復制添加圖表,然后再編輯圖表的配置。通過該方式在儀表盤里添加多個圖表,實現多樣化的數據展示以及告警配置。
      • 通過復制添加新的圖表
        1. 定位到要復制的圖表,將光標懸置在圖表右上角的選項圖標(操作選項)上,并單擊復制。

          成功復制圖表后,當前圖表旁邊出現一個相同的圖表。

        2. 用光標拖動復制生成的圖表到儀表盤上的合適位置。
      • 編輯已有圖表
        1. 定位到要編輯的圖表,將光標懸置在圖表右上角的選項圖標(操作選項)上,并單擊編輯
        2. 編輯頁面,根據需要修改當前圖表的配置,例如圖表名稱、SQL查詢語句、相對統計時間、圖表類型等,并單擊確定。
          說明 如果您修改了SQL查詢語句,則必須單擊預覽,由系統自動檢查語句的正確性后才可以單擊確定。如果SQL查詢語句有問題,您會收到報錯信息,這時確定按鈕不可操作。只有將SQL查詢語句修改正確后,您才可以單擊確定
      • 刪除已有圖表

        定位到要刪除的圖表,將光標懸置在圖表右上角的選項圖標(操作選項)上,并單擊刪除

  5. 配置日志告警。
    1. 在儀表盤右上角,選擇告警列表 > 新建
    2. 創建告警頁面,完成以下告警配置,并單擊下一步。
      配置項 說明
      告警名稱 告警的名稱。名稱長度為1~64個字符。
      關聯圖表 設置告警中關聯的圖表。

      設置關聯圖表時,查詢區間為服務端每次執行查詢時,讀取的數據時間范圍,支持相對時間與整點時間。例如,執行時間點為14:30:06,設置查詢區間為15分鐘(相對),則查詢區間為 14:15:06- 14:30:06;設置查詢區間為15分鐘(整點時間),則查詢區間為:14:15:00- 14:30:00。

      需要添加多個圖表時,只需單擊添加并設置即可。最多支持關聯三個圖表。圖表名稱前的編號為該圖表在告警中的編號,您可以在觸發條件中通過編號指定關聯的圖表。

      頻率 服務端每次執行告警檢查的時間。
      說明 目前服務端只返回檢查結果中的前100條數據。
      觸發條件 判斷告警是否觸發的條件表達式,滿足該條件時會根據執行間隔通知間隔發送告警通知。

      圖表默認從0開始編號,在觸發條件里用$0表示第一個圖表。例如,您可以設置$0.domainnum>=10,表示第一個圖表中domainnum字段值大于等于10時觸發告警。

      多個條件之間使用&&連接,表示邏輯與的關系,即必須同時滿足;使用||連接,表示邏輯或的關系,即滿足其中一個即可。

      說明 更多告警條件表達式語法請參見告警條件表達式語法。
      高級選項
      觸發通知閾值 累計觸發次數達到該閾值時根據通知間隔發送告警。不滿足觸發條件時不計入統計。默認觸發通知閾值為1,即滿足一次觸發條件即可檢查通知間隔。

      通過配置觸發通知閾值可以實現多次觸發、一次通知。例如,配置觸發通知閾值為100,則累計觸發次數達到100次時檢查通知間隔。如果同時滿足觸發通知閾值通知間隔,則發送通知。發送通知之后,累計次數會清零。如果因網絡異常等原因執行檢查失敗,不計入累計次數。

      說明 關于在告警配置中用到的監控指標以及監控指標的閾值設置建議,請參見常用監控指標。
      通知間隔 兩次告警通知之間的時間間隔。

      如果某次執行滿足了觸發條件,而且累計的觸發次數已經達到觸發通知閾值,且距離上次發送通知已經達到了通知間隔,則發送通知。如設置通知間隔為5分鐘,則5分鐘內至多收到一次通知。默認無間隔。

      說明 通過配置觸發通知閾值和通知間隔可以實現告警抑制的功能,防止收到過多的告警信息。
      說明 觸發通知閾值、通知間隔、檢查頻率三個條件配合使用,表示日志系統按照設置的檢查頻率去檢查觸發條件是否滿足,并在通知間隔內達到觸發通知閾值次數時推送告警信息。
    3. 創建告警頁面,完成通知設置,并單擊提交
      日志服務支持多種常用的告警通知方式,例如短信、語音郵件WebHook+釘釘機器人等。您必須先在通知列表右側選擇要使用的通知方式,然后完成具體配置。支持選擇并配置多種通知方式。
      • 短信告警

        設置接收告警的手機號碼發送內容。發送內容中可以指定告警字段。單擊查看全部變量了解各字段的含義。

      • 語音告警

        設置接收告警的手機號碼發送內容。

      • 郵件告警

        設置接收告警的收件人郵箱地址、告警郵件的主題發送內容

      • WebHook+釘釘機器人

        設置接收告警的釘釘群機器人的webhook地址(請求地址)和發送內容。