您不僅可以通過日志服務SLS采集日志,還可以基于SLS的告警功能監(jiān)控Knative服務的異常狀態(tài)。您可以自定義告警監(jiān)控規(guī)則,例如檢查頻率、觸發(fā)條件等,并配置對應的告警通知策略,在服務異常時及時以釘釘、短信、郵件等形式通知運維、開發(fā)人員進行處理,保證服務的持續(xù)運行。
前提條件
已部署一個Knative服務。本文示例快速部署一個Knative服務中創(chuàng)建的服務。
已將Knative服務接入日志采集,請參見在Knative上實現(xiàn)日志采集。
步驟一:查詢和分析日志
下文介紹在SLS控制臺查詢和分析日志的控制臺入口。詳細信息,請參見查詢和分析日志。
登錄日志服務控制臺。
在Project列表區(qū)域,單擊目標Project。
在控制臺左側,單擊日志存儲,在日志庫列表中單擊目標Logstore。
輸入命令并單擊查詢/分析。
例如,如果您想根據(jù)ERROR出現(xiàn)的次數(shù)進行監(jiān)控,可以使用以下的SQL語句來統(tǒng)計ERROR的數(shù)量:
* | select 'ERROR' , count(1) as total group by 'ERROR'
這條SQL語句會篩選出所有包含ERROR字段的記錄,并統(tǒng)計其數(shù)量,然后按照ERROR進行分組。
步驟二:配置監(jiān)控告警
登錄日志服務控制臺。
在Project列表區(qū)域,單擊目標Project。
在控制臺左側,單擊日志存儲,在日志庫列表中單擊目標Logstore。
在查詢和分析頁面,單擊圖標。
在告警監(jiān)控規(guī)則面板,配置告警規(guī)則。
關于如何配置告警規(guī)則,請參見創(chuàng)建日志告警監(jiān)控規(guī)則。
設置告警通知策略。
關于如何設置告警通知策略,請參見快速設置日志告警。
執(zhí)行如下命令,訪問helloworld-go服務。
此時會觸發(fā)告警通知。
curl -H "Host: helloworld-go.default.example.com" http://<網(wǎng)關IP> # 網(wǎng)關IP和域名請以您的實際數(shù)據(jù)為準。
預期輸出:
Hello Knative!
例如,如果您配置了郵件通知,告警信息可能如下:
相關文檔
您可以將Knative服務的監(jiān)控數(shù)據(jù)接入Prometheus并實時查看Grafana大盤,請參見查看Knative服務監(jiān)控大盤。