gpt4 book ai didi

google-cloud-platform - 使用 gcloud 创建 Stackdriver 警报策略? (不从文件加载)

转载 作者:行者123 更新时间:2023-12-04 01:35:40 24 4
gpt4 key购买 nike

所以我设置了一个通知 channel :

gcloud alpha monitoring channels create \
--description='test notification' \
--display-name='test_channel' \
--type=email \
--channel-labels=email_address=example@gmail.com

但我似乎无法获得与 command line 一起使用的警报策略(尽量避免使用从文件加载,因为我需要使用模板)。看起来这应该可行:

gcloud alpha monitoring policies create \
--notification-channels=test_channel \
--aggregation='{"alignmentPeriod": "60s","perSeriesAligner": "ALIGN_MEAN"}' \
--condition-display-name='CPU Utilization >0.80 for 10m'\
--condition-filter='metric.type="appengine.googleapis.com/flex/instance/cpu/utilization" resource.type="gae_instance"' \
--duration='1min' \
--if='> 0.80' \
--display-name='test alert'

但它返回:

Invalid value for [--aggregation]: Should only be specified if --condition-filter is also specified.

但是,如您所见,上面有一个 --condition-filter 标志。我尝试对其重新排序,以便 --condition-filter 出现在 --aggregation 之前,但这会导致持续时间错误,尽管它已经与文档相匹配,并且像 =60s=1min,或者在 --aggregation 中添加引号似乎没有帮助:

gcloud alpha monitoring policies create \
--notification-channels=test_channel \
--condition-filter='metric.type=appengine.googleapis.com/flex/instance/cpu/utilization resource.type=gae_instance' \
--aggregation='{"alignmentPeriod": "20s","perSeriesAligner": "ALIGN_MEAN"}' \
--condition-display-name='CPU Utilization >0.80 for 1m'\
--duration='1min' \
--if='> 0.80' \
--display-name='test alert'

怎么了?为什么我会收到这些错误?

最佳答案

经过一些刻意的错误尝试,我设法通过一些更改使其正常工作。

首先,我强烈建议您使用最新的 Cloud SDK 版本 - 如果您还没有使用 gcloud components update ,请将其更新到最新版本。就我而言,我使用了 Cloud SDK v275.0.0

您提供的第一个命令片段可以正确创建通知 channel ,因此应该保持不变:

gcloud alpha monitoring channels create \
--description='test notification' \
--display-name='test_channel' \
--type=email \
--channel-labels=email_address=example@gmail.com

不过,为了创建 Stackdriver Monitoring 政策,我必须执行一些更改:

  • --duration 标志指定的持续时间似乎并不认 list 位;我不得不从 --duration='1min' 更改为--duration='1m' 为了不抛出错误。

  • 需要警报策略的组合器,因此我在这种情况下添加了一个将 --combiner 选项设置为 AND 的组合器:--combiner='AND'.

  • 指定的通知 channel --notification-channels 标志需要和 ID 或完全 限定标识符 - 它不解析显示名称,所以我 将其更改为 --notification-channels=13234113421234567

    您可以找到 ID 或完全限定的标识符您之前创建的通知 channel :

    gcloud alpha monitoring channels list \
    --filter='displayName="test_channel"' \
    --format='value(name)'

最后,用于创建警报策略的 gcloud 命令应该与此类似:

gcloud alpha monitoring policies create \
--notification-channels=13234113421234567 \
--aggregation='{"alignmentPeriod": "60s","perSeriesAligner": "ALIGN_MEAN"}' \
--condition-display-name='CPU Utilization >0.80 for 10m'\
--condition-filter='metric.type="appengine.googleapis.com/flex/instance/cpu/utilization" resource.type="gae_instance"' \
--duration='1m' \
--if='> 0.80' \
--display-name='test alert' \
--combiner='AND'

请注意,此命令处于开发的alpha 状态,因此某些特性或功能可能尚未完全充实和/或测试。

关于google-cloud-platform - 使用 gcloud 创建 Stackdriver 警报策略? (不从文件加载),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59690792/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com