第 7 章 警报
本章描述了 alarm 命令下的命令。
7.1. 警报创建 复制链接链接已复制到粘贴板!
创建警报
使用方法:
| 值 | 概述 |
|---|---|
| -h, --help | 显示帮助信息并退出 |
| --name <NAME> | 警报的名称 |
| -t <TYPE>, --type <TYPE> | 警报类型应该是:event, composite, threshold, gnocchi_resources_threshold, gnocchi_aggregation_by_metrics_threshold, gnocchi_aggregation_by_resources_threshold, loadbalancer_member_health。 |
| --project-id <PROJECT_ID> | 与警报关联的项目(仅限 admin 用户配置) |
| --user-id <USER_ID> | 用户与警报关联(仅限 admin 用户配置) |
| --description <DESCRIPTION> | 警报的自由文本描述 |
| --state <STATE> | 警报的状态,其中一个:[ok, alert, 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} | 如果操作在警报处于目标状态时重复通知,则为 true |
| 值 | 概述 |
|---|---|
| -f {json,shell,table,value,yaml}, --format {json,shell,table,value,yaml} | 输出格式,默认为 table |
| -c COLUMN, --column COLUMN | 指定要包含的列,可以重复显示多个列 |
| 值 | 概述 |
|---|---|
| --noindent | 是否禁用缩进 json |
| 值 | 概述 |
|---|---|
| --prefix PREFIX | 在所有变量名称中添加前缀 |
| 值 | 概述 |
|---|---|
| --max-width <integer> | 最大显示宽度 <1 要禁用。您还可以使用 CLIFF_MAX_TERM_WIDTH 环境变量,但参数具有优先权。 |
| --fit-width | 将表适合显示宽度。如果 --max-width 大于 0,则表示表示。将环境变量 CLIFF_FIT_WIDTH=1 设置为 always 启用 |
| --print-empty | 如果没有要显示的数据,打印空表。 |
| 值 | 概述 |
|---|---|
| --query <QUERY> | 对于阈值或 event: key[op]data_type::value; list. data_type 的警报是可选的,但如果提供,必须是 string、integer、float 或 boolean。对于类型为 gnocchi_aggregation_by_resources_threshold: 的警报,需要指定一个复杂的查询 json 字符串,如 {"and": [{"=": {"ended_at": null}}, …]}。 |
| --comparison-operator <OPERATOR> | 要比较的运算符,其中之一:[lt,le,eq,ne,ge ] |
| --evaluation-periods <EVAL_PERIODS> | 要评估的周期数 |
| --threshold <THRESHOLD> | 要评估的阈值。 |
| 值 | 概述 |
|---|---|
| --event-type <EVENT_TYPE> | 要评估的事件类型 |
| 值 | 概述 |
|---|---|
| -m <METER NAME>, --meter-name <METER NAME> | 要评估的计量 |
| --period <PERIOD> | 要评估的每个时间段的长度(秒)。 |
| --statistic <STATISTIC> | 评估的统计,其中一个:[max,min,avg,sum,count] |
| 值 | 概述 |
|---|---|
| --granularity <GRANULARITY> | 查询的时间范围(以秒为单位)。 |
| --aggregation-method <AGGR_METHOD> | 与阈值进行比较的 aggregation_method。 |
| --metric <METRIC>, --metrics <METRIC> | 指标 ID 或名称,具体取决于警报类型 |
| 值 | 概述 |
|---|---|
| --resource-type <RESOURCE_TYPE> | 资源的类型。 |
| --resource-id <RESOURCE_ID> | 资源的 id。 |
| 值 | 概述 |
|---|---|
| --composite-rule <COMPOSITE_RULE> | 使用 json 格式的复合阈值规则,表单可以是嵌套的字典,它将 threshold/gnocchi 规则由 "and", "or" 组合。例如,表单类似于: {"or":[RULE1, RULE2, {"and": [RULE3, RULE4]}, RULEx 可以是基本阈值规则,但必须包含 "type" 字段,如: {"threshold": 0.8,"meter_name":"cpu_util","type":"threshold"} |
| 值 | 概述 |
|---|---|
| --stack-id <STACK_NAME_OR_ID> | 包含 loadbalancer 池和成员的根/顶级 heat 堆栈的名称或 id。如果在 loadbalancer 池中检测到不健康的成员,则 root Stack 上会触发更新。 |
| --pool-id <LOADBALANCER_POOL_NAME_OR_ID> | 将评估每个成员健康的 loadbalancer 池的名称或 id。 |
| --autoscaling-group-id <AUTOSCALING_GROUP_NAME_OR_ID> | 包含 loadbalancer 成员的 heat 自动扩展组的 ID。在根堆栈上触发更新前,不健康的成员将被标记为此类。 |