第 7 章 警报

本章论述了 alarm 命令下的命令。

7.1. 创建警报

创建警报

使用方法:

openstack alarm create [-h] [-f {json,shell,table,value,yaml}]
                              [-c COLUMN] [--noindent] [--prefix PREFIX]
                              [--max-width <integer>] [--fit-width]
                              [--print-empty] --name <NAME> -t <TYPE>
                              [--project-id <PROJECT_ID>]
                              [--user-id <USER_ID>]
                              [--description <DESCRIPTION>] [--state <STATE>]
                              [--severity <SEVERITY>] [--enabled {True|False}]
                              [--alarm-action <Webhook URL>]
                              [--ok-action <Webhook URL>]
                              [--insufficient-data-action <Webhook URL>]
                              [--time-constraint <Time Constraint>]
                              [--repeat-actions {True|False}]
                              [--query <QUERY>]
                              [--comparison-operator <OPERATOR>]
                              [--evaluation-periods <EVAL_PERIODS>]
                              [--threshold <THRESHOLD>]
                              [--event-type <EVENT_TYPE>]
                              [--granularity <GRANULARITY>]
                              [--aggregation-method <AGGR_METHOD>]
                              [--metric <METRIC>]
                              [--resource-type <RESOURCE_TYPE>]
                              [--resource-id <RESOURCE_ID>]
                              [--composite-rule <COMPOSITE_RULE>]

表 7.1. 可选参数

概述

-h, --help

显示帮助信息并退出

--name <NAME>

警报的名称

-T <TYPE>, --type <TYPE>

警报类型应当是: event、composite、gnocchi_resources_threshold、gnocchi_aggregation_by_metrics_threshold、gnocchi_aggregation_by_resources_threshold。

--project-id <PROJECT_ID>

与警报关联的项目(仅限管理员用户配置)

--user-id <USER_ID>

与警报关联的用户(仅限管理员用户配置)

--description <DESCRIPTION>

警报的免费文本描述

--state <STATE>

警报的状态之一:[ok,alarm,insufficient data]

--severity <SEVERITY>

警报的严重性,其中之一:[low,moderate,critical]

--enabled {True|False}

如果启用了警报评估,则为 true

--alarm-action <Webhook URL>

要在状态转换为警报时调用的 URL。可以多次使用。

--OK-action <Webhook URL>

要在状态转换为 ok 时调用的 URL。多次可能使用

--insufficient-data-action <Webhook URL>

当状态转换为足够数据时调用的 URL。可以多次使用

--time-constraint <Time Constraint>

仅在此时间约束内评估评估时,才评估警报。约束的开始点通过 cron 表达式指定,而其持续时间(以秒为单位)。可以为多个时间限制指定多个次数,格式为: name=<CONSTRAINT_NAME>;start=< CRON>;duration=<SECONDS>;[description=<DESCRIPTION>;[t imezone=<IANA Timezone>]

--repeat-actions {True|False}

真(如果应该重复通知操作,则警报会一直处于目标状态)

表 7.2. 输出格式器

概述

-f {json,shell,table,value,yaml}, --format {json,shell,table,value,yaml}

输出格式,默认为 table

-c COLUMN, --column COLUMN

指定要包含的列,可以重复

表 7.3. JSON Formatter

概述

--noindent

是否禁用缩进 json

表 7.4. shell Formatter

概述

--prefix PREFIX

为所有变量名称添加前缀

表 7.5. 表格式

概述

--max-width <integer>

最大显示宽度 <1 来禁用。您还可以使用 CLIFF_MAX_TERM_WIDTH 环境变量,但参数具有优先权。

--fit-width

适合显示宽度的表。如果 --max-width 大于 0,则意味着。将环境变量 CLIFF_FIT_WIDTH=1 设置为 always 启用

--print-empty

如果没有要显示数据,则打印空表。

表 7.6. 常见警报规则

概述

--query <QUERY>

对于类型为 event: key[op]data_type::value 的警报;list. data_type 是可选的,但若提供必须是字符串、整数、float 或 boolean。对于类型为 gnocchi_aggregation_by_resources_threshold:需要指定复杂的查询 json 字符串,如 {"and": [{"=": {"ended_at": null}}, …​]}。

--comparison-operator <OPERATOR>

与之比较的运算符,其中之一:[ltleeqnegegt]

--evaluation-periods <EVAL_PERIODS>

要评估的时间段数

--threshold <THRESHOLD>

要评估的阈值。

表 7.7. 事件警报

概述

--event-type <EVENT_TYPE>

要评估的事件类型

表 7.8. 常见 gnocchi 警报规则

概述

--granularity <GRANULARITY>

查询的时间范围(以秒为单位)。

--aggregation-method <AGGR_METHOD>

与阈值相比的 aggregation_method。

--metric <METRIC>, --metrics <METRIC>

根据警报类型的指标 ID 或名称

表 7.9. Gnocchi 资源阈值警报

概述

--resource-type <RESOURCE_TYPE>

资源的类型。

--resource-id <RESOURCE_ID>

资源的 ID。

表 7.10. 复合警报

概述

--composite-rule <COMPOSITE_RULE>

带有 json 格式的复合阈值规则,表单可以是嵌套的 diction,它按 "and", "or" 合并 gnocchi 规则。例如,格式为: {"or":[RULE1, RULE2, {"and": [RULE3, RULE4]}]}。