Adding a Threshold Rule¶
Function¶
This API is used to add a threshold rule.
URI¶
POST /v2/{project_id}/alarm-rules
Parameter | Mandatory | Type | Description |
---|---|---|---|
project_id | Yes | String | Project ID obtained from IAM. Generally, a project ID contains 32 characters. |
Request Parameters¶
Parameter | Mandatory | Type | Description |
---|---|---|---|
X-Auth-Token | Yes | String | User token obtained from IAM. |
Content-Type | Yes | String | Content type, which is application/json. Enumeration values:
|
Parameter | Mandatory | Type | Description |
---|---|---|---|
action_enabled | No | Boolean | Whether to enable notification. |
alarm_actions | No | Array of strings | List of alarm notifications. |
alarm_advice | No | String | Alarm clearance suggestion. Minimum: 0 Maximum: 255 |
alarm_description | No | String | Threshold rule description. Minimum: 0 Maximum: 1024 |
alarm_level | Yes | Integer | Alarm severity. Values: 1 (critical), 2 (major), 3 (minor), and 4 (warning). Enumeration values:
|
alarm_rule_name | Yes | String | Threshold rule name. Enter a maximum of 100 characters and do not start or end with a special character. Only letters, digits, underscores (_), and hyphens (-) are allowed. |
comparison_operator | Yes | String | Comparison operator. Options: <: less than the threshold; >: greater than the threshold; <=: less than or equal to the threshold; >=: greater than or equal to the threshold. Enumeration values:
|
dimensions | Yes | Array of Dimension objects | List of time series dimensions. |
evaluation_periods | Yes | Integer | Interval. Minimum: 1 Maximum: 5 |
id_turn_on | No | Boolean | Whether to enable the threshold rule. |
insufficient_data_actions | No | Array of strings | List of insufficient data notifications. |
metric_name | Yes | String | Time series name. Length: 1 to 255 characters. |
namespace | Yes | String | Time series objects' namespace. |
ok_actions | No | Array of strings | List of normal status notifications. |
period | Yes | Integer | Statistical period. Options: 60000: one minute; 300000: five minutes; 900000: 15 minutes; 3600000: one hour. Enumeration values:
|
statistic | Yes | String | Statistic. Enumeration values:
|
threshold | Yes | String | Threshold value. |
unit | Yes | String | Time series unit. |
Parameter | Mandatory | Type | Description |
---|---|---|---|
name | Yes | String | Dimension name. |
value | Yes | String | Dimension value. |
Response Parameters¶
Status code: 200
Parameter | Type | Description |
---|---|---|
alarm_rule_id | Long | Threshold rule ID. |
Status code: 400
Parameter | Type | Description |
---|---|---|
error_code | String | Error code. |
error_msg | String | Error message. |
error_type | String | Error type. |
trace_id | String | Trace ID, which is used to search for logs and locate faults. If 2xx is returned, trace_id is empty. If 4xx, trace_id is not empty. |
Example Requests¶
Add a threshold rule whose name is testaom, alarm severity is 3, namespace is PAAS.CONTAINER, and statistical mode is average.
https://{Endpoint}/v2/{project_id}/alarm-rules
{
"id_turn_on" : true,
"action_enabled" : false,
"alarm_actions" : [ ],
"alarm_advice" : "",
"alarm_description" : "",
"alarm_level" : 3,
"alarm_rule_name" : "aom_rule",
"comparison_operator" : ">=",
"dimensions" : [ {
"name" : "appName",
"value" : "rhm-broker"
} ],
"evaluation_periods" : 1,
"insufficient_data_actions" : [ ],
"metric_name" : "cpuCoreLimit",
"namespace" : "PAAS.CONTAINER",
"ok_actions" : [ ],
"period" : 60000,
"statistic" : "average",
"threshold" : 0,
"unit" : "Core"
}
Example Responses¶
Status code: 200
OK: The request is successful.
{
"alarm_rule_id" : 1134050083814244400
}
Status code: 400
Bad Request: The request is invalid. The client should not repeat the request without modifications.
{
"error_code" : "AOM.02001AOM.02001SVCSTG_AMS_4000115",
"error_msg" : "Invalid request parameter",
"error_type" : "BAD_REQUEST",
"trace_id" : ""
}
Status Codes¶
Status Code | Description |
---|---|
200 | OK: The request is successful. |
400 | Bad Request: The request is invalid. The client should not repeat the request without modifications. |
401 | Unauthorized: The authentication information is incorrect or invalid. |
403 | Forbidden: The request is rejected. The server has received the request and understood it, but the server refuses to respond to it. The client should not repeat the request without modifications. |
500 | Internal Server Error: The server is able to receive the request but unable to understand the request. |
503 | Service Unavailable: The requested service is invalid. The client should not repeat the request without modifications. |
Error Codes¶
See Error Codes.