You need to enable JavaScript to run this app.
导航
DescribeAlarms
最近更新时间:2024.11.21 18:53:07首次发布时间:2022.05.11 11:26:48

调用 DescribeAlarms 接口获取告警策略。

使用说明

  • 此接口的调用频率限制为 20 次/s,超出频率限制会报错 ExceedQPSLimit。
  • 如果配置了 TriggerConditions 参数,则 ConditionSeverity 参数的返回值将为空。

请求说明

  • 请求方式:GET
  • 请求地址:https://tls-{Region}.ivolces.com/DescribeAlarms

请求参数

下表仅列出该接口特有的请求参数和部分公共参数。更多信息请见公共参数

Query

参数类型是否必选示例值描述
ProjectIdStringp*****告警策略所属的日志项目 ID。
PageNumberInteger1分页查询时的页码。默认为 1,即从第一页数据开始返回。
PageSizeInteger20分页大小。默认为 20,最大为 100。
AlarmNameStringtest-alarm-nofify告警策略名称。
AlarmIdStringa*****告警策略 ID。
TopicIdStringt******监控对象的日志主题 ID。
TopicNameStringnewtopic监控对象的日志主题名称。
StatusStringtrue是否开启告警策略。

返回参数

下表仅列出本接口特有的返回参数。更多信息请参见返回结构

参数类型示例值描述
AlarmsArray of Alarms/告警策略列表。
TotalInteger5符合条件的告警策略总数。

Alarms

参数类型示例值描述
StatusBooleantrue是否开启告警策略。默认值为 true,即开启告警策略。
AlarmIdStringa******告警策略的 ID。
SeverityStringnotice告警通知的级别,即告警的严重程度。枚举值包括 noticewarningcritical
AlarmNameStringtest-alarm告警策略名称。
ConditionString$1.errNum>0告警触发条件。
ProjectIdStringp********告警策略所属的日志项目 ID。
CreateTimeString2021-08-19 11:41:29创建告警策略的时间。
ModifyTimeString2021-08-19 11:41:32告警策略最近修改的时间。
AlarmPeriodInteger60所有渠道的告警通知发送周期。单位为分钟。
QueryRequestArray of QueryRequest/执行语句。
RequestCycleObject of RequestCycle/告警任务的执行周期。
TriggerPeriodInteger1持续周期。持续满足触发条件 TriggerPeriod 个周期后,再进行告警。
UserDefineMsgStringtest告警通知的内容。
AlarmNotifyGroupArray of NotifyGroupsInfo/告警对应的通知列表。
AlarmPeriodDetailObject of AlarmPeriodSetting/各渠道的告警发送周期。单位为分钟。
TriggerConditionsArray of TriggerCondition/告警触发条件列表。
JoinConfigurationsArray of JoinConfig/告警检索分析结果集合操作的相关配置。

QueryRequest

参数类型示例值描述
QueryStringFailed | select count(*) as errNum检索分析语句,支持的最大长度为 1024 字符。
NumberInteger1告警对象序号,从 1 开始递增。
TopicIdString864*********告警策略所要监控的日志主题 ID。
TopicNameStringyrdt告警策略所要监控的日志主题名称。
EndTimeOffsetInteger-15查询的终止时间,相对当前的历史时间,单位为分钟,取值为非正整数,须大于 StartTimeOffset,最大值为 0,最小值为 -1440。
StartTimeOffsetInteger-15查询的起始时间,相对当前的历史时间,单位为分钟,取值为非正整数,最大值为 0,最小值为 -1440。

RequestCycle

参数类型示例值描述
TimeInteger10调度的周期或者定期执行的时间点(距离 00:00 的分钟数),取值范围为 1~1440,单位为分钟。

Type

String

Period

调度周期类型。可选值:

  • Period:按照周期进行调度,即每隔一段时间调度一次。
  • Fixed:定期调度,即每天固定时间点调度一次。
  • Cron:使用 Cron 表达式。
CronTabString0 18 * * *Cron表达式,日志服务通过 Cron 表达式指定告警任务定时执行。Cron 表达式的最小粒度为分钟,24 小时制。例如 0 18 * * * 表示每天 18 点整执行一次告警任务。

NotifyGroupsInfo

参数类型示例值描述
ReceiversArray of Receiver/接收告警的 IAM 用户列表。可设置 1~10 个 IAM 用户。
CreateTimeString2024-07-23 11:41:29告警通知组创建的时间。
ModifyTimeString2024-07-23 11:41:32告警通知组修改的时间。

NotifyType

Array of String

Trigger

告警通知的类型。可选值,选择一个或者多个:

  • Trigger - 告警触发
  • Recovery - 告警恢复
NoticeRulesArray of NoticeRule/通知组规则。
IamProjectNameStringdefault告警组所属的 IAM 项目。
AlarmNotifyGroupIdStringt****告警通知组 ID。
AlarmNotifyGroupNameStringtest-alarm-nofify告警通知组名称。

AlarmPeriodSetting

参数类型示例值描述
SMSInteger10短信告警周期,单位为分钟,取值范围为 10~1440。
EmailInteger10邮件告警周期,单位为分钟,取值范围为 1~1440。
PhoneInteger10电话告警周期,单位为分钟,取值范围为 10~1440。
GeneralWebhookInteger10自定义 Webhook 告警周期,单位为分钟,取值范围为 1~1440。

TriggerCondition

参数类型示例值描述
SeverityStringnotice告警通知的级别,即告警的严重程度。支持设置为 noticewarningcritical,严重程度递增。默认为 notice
ConditionString$1.cnt == 5告警触发条件表达式。
CountConditionString__count__ == 10有数据、有特定条数据场景下的数值表达式,通过 __count__ 来实现。

JoinConfig

参数类型示例值描述
ConditionString$1.uid==$2.uid使用左联或右联时的表达式。

SetOperationType

String

CrossJoin

集合操作类型。可选值:

  • CrossJoin:笛卡尔积。
  • LeftJoin:左联。
  • RightJoin:右联。
  • InnerJoin:内联。
  • FullJoin:全联。

Receiver

参数类型示例值描述
EndTimeString23:59:59可接收告警通知的结束时间。24 小时制,格式为 HH:mm:ss,时间范围为 00:00:00~23:59:59StartTime 不能大于 EndTime
StartTimeString00:00:00可接收告警通知的开始时间。24 小时制,格式为HH:mm:ss,时间范围为 00:00:00~23:59:59StartTime 不能大于 EndTime

ReceiverType

String

User

接收对象类型。可设置为:

  • User:IAM 用户。
  • UserGroup:IAM 用户组。
ReceiverNamesArray of String["Andy"]IAM 用户或用户组名称。

ReceiverChannels

Array of String

["Sms"]

通知接收渠道。支持设置一个或多个渠道。可设置为:

  • Email:邮件。
    日志服务使用的告警邮箱的域名为 mail.tls.volcengine.com ,您可以将该域名添加到目标邮箱的白名单中,以免告警邮件被拦截。
  • Sms:短信。
  • Phone:电话。
    • 如果电话未接通,不会重复拨打,将免费发送一次短信通知。
    • 日志服务使用 02132222528、02132222527 号码发送告警通知,您可将上述号码添加到手机白名单中,以免告警电话被拦截。
  • GeneralWebhook:自定义 Webhook 地址。
  • Lark:飞书。
  • DingTalk:钉钉。
  • WeChat:企业微信。

说明

  • ReceiverChannels 中包含 Lark、DingTalk
    或 WeChat 时,必须配置 AlarmWebhookIntegrationIdAlarmWebhookIntegrationNameAlarmContentTemplateId 参数,且将以 GeneralWebhook 开头的各个参数留空。
  • ReceiverChannels 中包含 GeneralWebhook 且不包含 Lark、DingTalk 和 WeChat 时,配置说明如下:
    • (推荐)配置 AlarmWebhookIntegrationIdAlarmWebhookIntegrationNameAlarmContentTemplateId 参数,且将以 GeneralWebhook 开头的各个参数留空。
    • 配置以 GeneralWebhook 开头的各个参数,且将以 AlarmWebhook 开头和以 AlarmContent 开头的参数留空。
GeneralWebhookUrlStringhttps://xxxx.feushu.com/xxxx自定义接口回调地址。
GeneralWebhookBodyString/自定义 WebHook 请求体。建议根据对应服务的回调接口格式要求设置请求体内容。

AlarmWebhookAtUsers

Array of String

user1

通过 Webhook 集成配置发送通知到飞书、钉钉或企业微信时,需要提醒的用户名。

说明

配置了以 AlarmWebhook 开头的参数时,表示您选择使用 Webhook 集成配置方式管理 Webhook 地址,此时请将 GeneralWebhook 开头的参数留空,无需配置。

AlarmWebhookIsAtAll

Boolean

true

通过 Webhook 集成配置发送通知到飞书、钉钉或企业微信时,是否提醒所有人。
true:提醒所有人。
false:不提醒所有人。

说明

配置了以 AlarmWebhook 开头的参数时,表示您选择使用 Webhook 集成配置方式管理 Webhook 地址,此时请将 GeneralWebhook 开头的参数留空,无需配置。

AlarmWebhookAtGroups

Array of String

group1

通过 Webhook 集成配置发送通知到飞书、钉钉或企业微信时,需要提醒的用户组名称。

说明

配置了以 AlarmWebhook 开头的参数时,表示您选择使用 Webhook 集成配置方式管理 Webhook 地址,此时请将 GeneralWebhook 开头的参数留空,无需配置。

GeneralWebhookMethodStringPOST自定义接口回调方法,仅支持设置为 POST 或 PUT。
GeneralWebhookHeadersArray of GeneralWebhookHeaderKV/自定义接口回调请求头。
AlarmContentTemplateIdStringal****告警内容模版 ID。

AlarmWebhookIntegrationId

String

1f4a9e21****

告警 Webhook 集成配置的 ID。

说明

配置了以 AlarmWebhook 开头的参数时,表示您选择使用 Webhook 集成配置方式管理 Webhook 地址,此时请将 GeneralWebhook 开头的参数留空,无需配置。

AlarmWebhookIntegrationName

String

test

告警 Webhook 集成配置的名称。

说明

配置了以 AlarmWebhook 开头的参数时,表示您选择使用 Webhook 集成配置方式管理 Webhook 地址,此时请将 GeneralWebhook 开头的参数留空,无需配置。

NoticeRule

参数类型示例值描述
HasNextBooleantrue是否继续进入下一层的条件判断。
RuleNodeObject of RuleNode/规则节点。
HasEndNodeBooleantrue后面是否存在结束节点。
ReceiverInfosArray of Receiver/通知渠道相关信息。

GeneralWebhookHeaderKV

参数类型示例值描述
keyStringContent-Type自定义请求头的 Key。
valueStringapplication/json自定义请求头的 Value。

RuleNode

参数类型示例值描述

Type

String

Operation

当前节点类型。可选值:

  • Operation:操作节点。
  • Condition:条件节点
ValueArray of String/节点值。
ChildrenArray of RuleNode[ "AND"]子节点。

请求示例

GET https://tls-{Region}.ivolces.com/DescribeAlarms?ProjectId=e4**** HTTP/1.1

返回示例

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
    "Total": 2,
    "Alarms": [
        {
            "AlarmId": "47c5e05a****",
            "AlarmName": "yyj-test",
            "ProjectId": "a8345bfc****",
            "ProjectName": "yyj-da171",
            "Status": true,
            "Severity": "",
            "QueryRequest": [
                {
                    "Query": "* | SELECT COUNT(*) AS cnt",
                    "Number": 1,
                    "TopicId": "c14ef1c0****",
                    "TopicName": "fc4bc2d7****",
                    "StartTimeOffset": -15,
                    "EndTimeOffset": 0
                },
                {
                    "Query": "* | SELECT *",
                    "Number": 2,
                    "TopicId": "c14ef1c0****",
                    "TopicName": "fc4bc2d7****",
                    "StartTimeOffset": -15,
                    "EndTimeOffset": 0
                }
            ],
            "RequestCycle": {
                "Type": "CronTab",
                "Time": 0,
                "CronTab": "0/1 * * * *"
            },
            "Condition": "",
            "TriggerConditions": [
                {
                    "CountCondition": "__count__ == 10",
                    "Severity": "notice"
                },
                {
                    "Condition": "$1.cnt == 5",
                    "Severity": "notice"
                },
                {
                    "CountCondition": "__count__ == 1",
                    "Severity": "notice"
                }
            ],
            "JoinConfigurations": [
                {
                    "SetOperationType": "LeftJoin",
                    "Condition": "$1.cnt == $2.count"
                }
            ],
            "TriggerPeriod": 1,
            "AlarmPeriod": 30,
            "AlarmPeriodDetail": {
                "SMS": 10,
                "Phone": 10,
                "Email": 10,
                "GeneralWebhook": 1
            },
            "AlarmNotifyGroup": [
                {
                    "AlarmNotifyGroupName": "yyj-test001",
                    "AlarmNotifyGroupId": "7456eb3e****",
                    "NotifyType": [
                        "Trigger",
                        "Recovery"
                    ],
                    "Receivers": [
                        {
                            "ReceiverType": "User",
                            "ReceiverNames": [],
                            "ReceiverChannels": [
                                "Lark"
                            ],
                            "StartTime": "00:00:00",
                            "EndTime": "23:59:59",
                            "Webhook": "",
                            "TemplateIDs": null,
                            "GeneralWebhookUrl": "",
                            "GeneralWebhookMethod": "",
                            "GeneralWebhookHeaders": null,
                            "GeneralWebhookBody": "",
                            "AlarmContentTemplateId": "default-template",
                            "AlarmContentTemplateName": "默认模版",
                            "AlarmWebhookIntegrationId": "ca2eb341****",
                            "AlarmWebhookIntegrationName": "yyj-test",
                            "AlarmWebhookIsAtAll": false,
                            "AlarmWebhookAtUsers": null,
                            "AlarmWebhookAtGroups": null,
                            "IamProjectName": null
                        },
                        {
                            "ReceiverType": "User",
                            "ReceiverNames": [],
                            "ReceiverChannels": [
                                "Lark"
                            ],
                            "StartTime": "00:00:00",
                            "EndTime": "23:59:59",
                            "Webhook": "",
                            "TemplateIDs": null,
                            "GeneralWebhookUrl": "",
                            "GeneralWebhookMethod": "",
                            "GeneralWebhookHeaders": null,
                            "GeneralWebhookBody": "",
                            "AlarmContentTemplateId": "default-template",
                            "AlarmContentTemplateName": "默认模版",
                            "AlarmWebhookIntegrationId": "40959044****",
                            "AlarmWebhookIntegrationName": "alarm-001",
                            "AlarmWebhookIsAtAll": false,
                            "AlarmWebhookAtUsers": null,
                            "AlarmWebhookAtGroups": null,
                            "IamProjectName": null
                        }
                    ],
                    "NoticeRules": [
                        {
                            "RuleNode": null,
                            "ReceiverInfos": [
                                {
                                    "ReceiverType": "User",
                                    "ReceiverNames": [],
                                    "ReceiverChannels": [
                                        "Lark"
                                    ],
                                    "StartTime": "00:00:00",
                                    "EndTime": "23:59:59",
                                    "Webhook": "",
                                    "TemplateIDs": null,
                                    "GeneralWebhookUrl": "",
                                    "GeneralWebhookMethod": "",
                                    "GeneralWebhookHeaders": null,
                                    "GeneralWebhookBody": "",
                                    "AlarmContentTemplateId": "default-template",
                                    "AlarmContentTemplateName": "默认模版",
                                    "AlarmWebhookIntegrationId": "ca2eb341****",
                                    "AlarmWebhookIntegrationName": "yyj-test",
                                    "AlarmWebhookIsAtAll": false,
                                    "AlarmWebhookAtUsers": null,
                                    "AlarmWebhookAtGroups": null,
                                    "IamProjectName": null
                                }
                            ],
                            "HasNext": true,
                            "HasEndNode": true
                        },
                        {
                            "RuleNode": {
                                "Type": "Operation",
                                "Value": [
                                    "OR"
                                ],
                                "Children": [
                                    {
                                        "Type": "Condition",
                                        "Value": [
                                            "NotifyType",
                                            "in",
                                            "[\"1\"]"
                                        ],
                                        "Children": []
                                    },
                                    {
                                        "Type": "Condition",
                                        "Value": [
                                            "Severity",
                                            "in",
                                            "[\"notice\",\"critical\",\"warning\"]"
                                        ],
                                        "Children": []
                                    }
                                ]
                            },
                            "ReceiverInfos": [
                                {
                                    "ReceiverType": "User",
                                    "ReceiverNames": [],
                                    "ReceiverChannels": [
                                        "Lark"
                                    ],
                                    "StartTime": "00:00:00",
                                    "EndTime": "23:59:59",
                                    "Webhook": "",
                                    "TemplateIDs": null,
                                    "GeneralWebhookUrl": "",
                                    "GeneralWebhookMethod": "",
                                    "GeneralWebhookHeaders": null,
                                    "GeneralWebhookBody": "",
                                    "AlarmContentTemplateId": "default-template",
                                    "AlarmContentTemplateName": "默认模版",
                                    "AlarmWebhookIntegrationId": "40959044****",
                                    "AlarmWebhookIntegrationName": "alarm-001",
                                    "AlarmWebhookIsAtAll": false,
                                    "AlarmWebhookAtUsers": null,
                                    "AlarmWebhookAtGroups": null,
                                    "IamProjectName": null
                                }
                            ],
                            "HasNext": false,
                            "HasEndNode": false
                        }
                    ],
                    "CreateTime": "2024-07-23 10:24:22",
                    "ModifyTime": "2024-07-23 10:26:06",
                    "IamProjectName": "default"
                }
            ],
            "UserDefineMsg": "",
            "CreateTime": "2024-07-23 10:29:20",
            "ModifyTime": "2024-07-23 10:30:16",
            "DashboardId": "8e5d4921****",
            "alarmDisabled": false
        },
        {
            "AlarmId": "9228cf0f****",
            "AlarmName": "aaa",
            "ProjectId": "a8345bfc****",
            "ProjectName": "yyj-da171",
            "Status": false,
            "Severity": "",
            "QueryRequest": [
                {
                    "Query": "* | select count(*) as cnt",
                    "Number": 1,
                    "TopicId": "c14ef1c0****",
                    "TopicName": "fc4bc2d7****",
                    "StartTimeOffset": -15,
                    "EndTimeOffset": 0
                },
                {
                    "Query": "* | select count(*) as cnt",
                    "Number": 2,
                    "TopicId": "c14ef1c0****",
                    "TopicName": "fc4bc2d7****",
                    "StartTimeOffset": -15,
                    "EndTimeOffset": 0
                },
                {
                    "Query": "* | select count(*) as cnt",
                    "Number": 3,
                    "TopicId": "c14ef1c0****",
                    "TopicName": "fc4bc2d7****",
                    "StartTimeOffset": -15,
                    "EndTimeOffset": 0
                }
            ],
            "RequestCycle": {
                "Type": "Period",
                "Time": 10,
                "CronTab": ""
            },
            "Condition": "",
            "TriggerConditions": [
                {
                    "Severity": "notice"
                }
            ],
            "JoinConfigurations": [
                {
                    "SetOperationType": "CrossJoin",
                    "Condition": ""
                },
                {
                    "SetOperationType": "CrossJoin",
                    "Condition": ""
                }
            ],
            "TriggerPeriod": 1,
            "AlarmPeriod": 30,
            "AlarmPeriodDetail": {},
            "AlarmNotifyGroup": [
                {
                    "AlarmNotifyGroupName": "aaa2",
                    "AlarmNotifyGroupId": "e308b604****",
                    "NotifyType": [
                        "Trigger",
                        "Recovery"
                    ],
                    "Receivers": [
                        {
                            "ReceiverType": "User",
                            "ReceiverNames": [],
                            "ReceiverChannels": [
                                "WeChat"
                            ],
                            "StartTime": "00:00:00",
                            "EndTime": "23:59:59",
                            "Webhook": "",
                            "TemplateIDs": null,
                            "GeneralWebhookUrl": "",
                            "GeneralWebhookMethod": "",
                            "GeneralWebhookHeaders": null,
                            "GeneralWebhookBody": "",
                            "AlarmContentTemplateId": "default-template",
                            "AlarmContentTemplateName": "默认模版",
                            "AlarmWebhookIntegrationId": "0721bde9****",
                            "AlarmWebhookIntegrationName": "yyj-wei",
                            "AlarmWebhookIsAtAll": false,
                            "AlarmWebhookAtUsers": [
                                "test1"
                            ],
                            "AlarmWebhookAtGroups": null,
                            "IamProjectName": null
                        }
                    ],
                    "NoticeRules": [
                        {
                            "RuleNode": {
                                "Type": "Operation",
                                "Value": [
                                    "AND"
                                ],
                                "Children": [
                                    {
                                        "Type": "Condition",
                                        "Value": [
                                            "NotifyType",
                                            "in",
                                            "[\"1\",\"2\"]"
                                        ],
                                        "Children": []
                                    }
                                ]
                            },
                            "ReceiverInfos": [
                                {
                                    "ReceiverType": "User",
                                    "ReceiverNames": [],
                                    "ReceiverChannels": [
                                        "WeChat"
                                    ],
                                    "StartTime": "00:00:00",
                                    "EndTime": "23:59:59",
                                    "Webhook": "",
                                    "TemplateIDs": null,
                                    "GeneralWebhookUrl": "",
                                    "GeneralWebhookMethod": "",
                                    "GeneralWebhookHeaders": null,
                                    "GeneralWebhookBody": "",
                                    "AlarmContentTemplateId": "default-template",
                                    "AlarmContentTemplateName": "默认模版",
                                    "AlarmWebhookIntegrationId": "0721bde9****",
                                    "AlarmWebhookIntegrationName": "yyj-wei",
                                    "AlarmWebhookIsAtAll": false,
                                    "AlarmWebhookAtUsers": [
                                        "test1"
                                    ],
                                    "AlarmWebhookAtGroups": null,
                                    "IamProjectName": null
                                }
                            ],
                            "HasNext": false,
                            "HasEndNode": true
                        }
                    ],
                    "CreateTime": "2024-03-01 18:12:29",
                    "ModifyTime": "2024-07-16 12:01:41",
                    "IamProjectName": "default"
                }
            ],
            "UserDefineMsg": "",
            "CreateTime": "2024-04-25 16:07:18",
            "ModifyTime": "2024-07-23 10:27:49",
            "DashboardId": "8e5d4921****",
            "alarmDisabled": false
        }
    ]
}

错误码

下表为您列举了该接口与业务逻辑相关的错误码。公共错误码请参见公共错误码文档。

HTTP 状态码错误码错误信息说明
400InvalidArgumentInvalid argument key %s, value %s, please check argument.参数不合法。
404AlarmNotExistAlarm xxx does not exist告警策略不存在。
500InternalServerErrorWe encountered an unexpected server error . Please try again later.服务器内部错误。