當您需要監控某個雲產品中的全部API的速率配額時,可以通過CloudMonitor建立全域配額警示。當該雲產品中的任意一個API的速率配額的使用率或可用率達到閾值時,警示連絡人會收到警示通知,提醒其及時申請提升配額。
應用情境
使用者A在管理雲資源時,為了提高自動化管理能力,整合OpenAPI進行服務管理。但由於OpenAPI數量龐大,訪問頻率很高,所以API流控發生的頻率較高,時常會影響業務穩定性。為瞭解決這一問題,營運團隊計劃監控各雲產品API的即時用量和配額,提前規劃以保證業務的穩定性。然而API數量龐大,每個API單獨配置監控很難實現,於是客戶通過全域API的監控能力來進行管理。
目前,我們提供了控制台和OpenAPI整合兩種方式來監控全域API的即時用量和配額。
背景資訊
建立配額警示後,當警示指標達到閾值時,警示連絡人群組中的警示連絡人會收到電話、簡訊、郵件和警示回調方式的警示通知。建立的配額警示將消耗CloudMonitor的費用額度,不同警示方式的計費如下:
前提條件
API速率配額的配額警示整合CloudMonitor的警示能力,目前處於邀測階段,請您提交工單申請。
通過控制台為API速率配額建立全域配額項警示
本文以為Elastic Compute Service的全部API的速率配額建立警示為例進行介紹,其中警示條件為:當配額使用率的閾值大於等於80%時,通過簡訊和郵件給警示連絡人群組內的警示連絡人發送警告層級(Warn)的警示通知。
進入Elastic Compute Service的API速率配額監控頁簽。
單擊全域警示規則,在全域警示規則頁面,為Elastic Compute Service的API速率配額建立警示規則。
查看API速率配額的全域配額項警示的建立結果。
通過CloudMonitor控制台查看
通過配額中心控制台查看
查看新建立的警示規則。
查看每個有用量的API的監控詳情。
通過OpenAPI為API速率配額建立全域配額項警示
本文以為Elastic Compute Service的全部API的速率配額建立警示為例進行介紹,其中警示條件為:當配額使用率的閾值大於等於80%時,通過簡訊和郵件給警示連絡人群組內的警示連絡人發送警告層級(Warn)的警示通知。
先確認目標雲產品(即Elastic Compute Service)的API速率配額是否支援全域配額項警示。
調用配額中心的API ListProductQuotas或GetProductQuota查看返回參數
UsageMetric
。當UsageMetric
的傳回值不為空白時,表示Elastic Compute Service支援API速率配額的全域配額項警示。請求參數:
ProductCode
輸入ecs
,QuotaCategory
選擇FlowControl
,其他參數均保持預設值。返回參數:在
UsageMetric
中顯示API速率配額在CloudMonitor中的監控資訊,您可以得到MetricNamespace
為acs_quotas_flowcontrol
,每個API速率配額的返回資訊如下:{ "QuotaActionCode": "f_ow93wj", "QuotaName": "DescribeDisks", "QuotaArn": "acs:quotas:ap-northeast-1:120886317861****:quota/ecs/f_ow93wj", "TotalQuota": 1000, "ProductCode": "ecs", "UsageMetric": { "MetricName": "Usage", "MetricDimensions": { "productCode": "ecs", "metricKey": "DescribeDisks/2014-05-26", "regionId": "ap-northeast-1", "label": "none" }, "MetricNamespace": "acs_quotas_flowcontrol" }, "QuotaCategory": "FlowControl", "Dimensions": { "apiName": "DescribeDisks", "apiVersion": "2014-05-26", "regionId": "ap-northeast-1" }, "Period": { "PeriodValue": 60, "PeriodUnit": "second" }, "Adjustable": false }
說明metricKey
用於為指定API速率配額建立配額警示(即單獨配額項警示)。
調用CloudMonitor的API DescribeMetricList查詢API速率配額的監控資料,根據配額用量的變化趨勢配置配額警示。
請求參數:
Namespace
輸入acs_quotas_flowcontrol
,MetricName
輸入UsagePercentage
,Dimensions
輸入[{"productCode":"ecs"}]
,其他參數均保持預設值。說明配額中心的
MetricName
包括:Quota
(配額值)、Usage
(配額用量)、UsagePercentage
(配額使用率)和AvailablePercentage
(配額剩餘可用率)。返回參數:在
Datapoints
中,您可以得到Value
的取值,作為警示閾值的參考,返回資訊如下:{ "RequestId": "14885854-7869-5E95-91BD-35B33B7E619D", "Period": "60", "Datapoints": "[{\"timestamp\":1721068920000,\"productCode\":\"ecs\",\"metricKey\":\"DescribeInstances/2014-05-26\",\"regionId\":\"cn-huhehaote\",\"label\":\"none\",\"userId\":\"120886317861****\",\"Value\":0.002},{\"timestamp\":1721068920000,\"productCode\":\"ecs\",\"metricKey\":\"InvokeCommand/2014-05-26\",\"regionId\":\"cn-qingdao\",\"label\":\"none\",\"userId\":\"120886317861****\",\"Value\":0.125}]", "Code": "200", "Success": true }
調用CloudMonitor的API PutResourceMetricRules為API速率配額建立配額警示規則(即全域配額項警示)。
請求參數:必填參數的設定方法及其樣本如下表所示。
參數
描述
樣本
MetricName
監控項名稱。取值:
Quota:配額值。
Usage:配額用量。
UsagePercentage:配額使用率。
AvailablePercentage:配額剩餘可用率。
說明全域配額項警示只能用
UsagePercentage
和AvailablePercentage
。UsagePercentage
Escalations.Warn.Threshold
Warn層級警示閾值。
80
EffectiveInterval
警示規則的生效時間。
00:00-23:59 +0800 dayofweek 1,2,3,4,5,6,7
RuleId
警示規則ID。
quota-ecs-ruleid-test
Escalations.Warn.ComparisonOperator
Warn層級閾值比較符。取值:
GreaterThanOrEqualToThreshold:大於等於。
GreaterThanThreshold:大於。
LessThanOrEqualToThreshold:小於等於。
LessThanThreshold:小於。
NotEqualToThreshold:不等於。
GreaterThanYesterday:同比昨天時間上漲。
LessThanYesterday:同比昨天時間下降。
GreaterThanLastWeek:同比上周同一時間上漲。
LessThanLastWeek:同比上周同一時間下降。
GreaterThanLastPeriod:環比上周期上漲。
LessThanLastPeriod:環比上周期下降。
GreaterThanOrEqualToThreshold
Resources
資源資訊。
說明當您為某個API建立單獨的配額項警示時,Resources輸入樣本:
[{"productCode":"ecs","metricKey":"DescribeInstances/2014-05-26"}]
。[{"productCode":"ecs"}]
ContactGroups
警示連絡人群組。
CloudMonitor
Namespace
雲產品的資料命名空間。
acs_quotas_flowcontrol
RuleName
警示規則名稱。
quota-ecs-rulename-test
Escalations.Warn.Times
Warn層級警示重試次數。
3
Escalations.Warn.Statistics
Warn層級警示統計方法。
Value
返回資訊如下,說明建立警示規則成功。
{ "Message": "", "RequestId": "BE4CAC0F-A134-55BA-909B-FF62568FE884", "FailedListResult": { "Target": [] }, "Code": "200", "Success": true }
調用CloudMonitor的API DescribeMetricRuleList,通過
RuleName
或RuleId
查看警示規則的建立結果。
相關文檔
您可以為某個雲產品中的某個API速率建立配額警示(即單獨配額項警示)。具體操作,請參見為API速率配額建立配額警示。
當您收到某個配額項的警示時,可以申請提升其配額。具體操作,請參見建立配額提升申請。
建立配額警示後,您可以查看配額警示詳情。具體操作,請參見查詢配額警示列表及其詳情。
建立配額警示後,您可以查看配額警示歷史。具體操作,請參見查詢配額警示記錄。