GCP监控,保存警报时出现警报策略错误?需要创建警报,当 Pod 的 75% 的限制被突破时将触发警报

GCP Monitoring, alert policy error while saving the alert? Need to create alert which will trigger when 75% of pod's limit is breached

提问人:arpit mandlik 提问时间:7/27/2023 最后编辑:arpit mandlik 更新时间:7/28/2023 访问量:85

问:

我们一直在利用基于 Prometheus 查询语言 (PromQL) 的特定警报配置的 Grafana。现在,我们正在过渡到 Stackdriver,这是 Google Cloud Platform 的原生监控解决方案,它使用指标查询语言 (MQL) 而不是 PromQL。因此,我们需要将现有的 Grafana 警报查询转换为 MQL。

以下是转换后的 MQL 查询,我认为这是适当的转换:

     {
      fetch k8s_container::kubernetes.io/container/memory/used_bytes
      | filter metric.memory_type == 'non-evictable'
      | group_by 5m, [value_used_bytes_mean: mean(value.used_bytes)]
      | every 5m
      ;
      fetch k8s_container::kubernetes.io/container/memory/limit_bytes
    }
    | filter
        (resource.cluster_name == 'k8s-cluster'
         && resource.namespace_name == 'test1'
         && resource.pod_name =~ '^api.*' )
    | join | div | mul 100
    | condition val() > cast_units(75, '%')

虽然转换后的查询在生成警报时起作用,但在尝试在 Stackdriver 中保存警报策略时,我们遇到了一个问题,即错误“错误:无法保存警报策略。请求包含无效参数。

为了解决这个错误,我们需要进一步调查根本原因。该错误可能源于查询中的某些无效字符、不支持的聚合或其他因素。仔细检查查询的语法正确性,检查任何不适当的字符或符号,并确保与 Stackdriver 支持的功能兼容,这一点至关重要

我已经尝试了条件的多种组合,因为问题似乎发生在条件语句中,

    condition val() > cast_units(75, '%')
    condition val() > 75 '%'
    condition val() > 75 'By'

像这样的东西还有很多。

stackdriver google-cloud-monitoring gcp-alerts

评论

0赞 arpit mandlik 7/28/2023
此问题已通过简单地添加 Windows 30 得到解决,此处已得到解答。

答: 暂无答案