问题标签 [prometheus-alertmanager]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
prometheus - 在 alertmanager 中添加自定义 webhook 配置
我有一个自定义 webhook URL,我需要在 alertmanager 中配置相同的 URL 以获取警报通知。但是我的配置没有按预期工作。在警报管理器中出现以下错误,
level=error ts=2019-04-22T09:31:46.038681545Z caller=dispatch.go:279 component=dispatcher msg="Notify for alerts failed" num_alerts=1 err="cancelling notify retry for \"webhook\" due to unrecoverable error: unexpected status code 404 from http://example.com:9898/TrigerToSlack"
我的 Alertmanager 配置如下,
kubernetes - 重新启动 Pod 时发出警报:Windows 容器上的 Prometheus
我为 Windows 容器设置了 Prometheus,它会抓取 wmi_exporter 支持的指标。但我想要一些跟踪 pod 重启等的指标,这些指标不是其中的一部分。我相信 kube-state-metrics 提供了这个功能。但我找不到任何方法将它安装在 Windows 容器上。我在网上找到的所有 helm 图表都有只适用于 Linux 容器的图像。那么,有没有办法将它安装在 Windows 容器上?
有没有其他更好的方法来发出 pod/container 重启的警报?
prometheus - 计算移动时间窗口中连续点之间百分比下降的发生次数
我想在普罗米修斯中根据一个简单的英语会读到类似的规则发出警报
满足此规则的要求是测量以 1 分钟间隔出现的连续数据点的下降,如果任何数据点的下降大于或等于 5%,我们就会发送警报。
我正在使用不同记录规则的组合来实现这一点。我要的算法如下
第二条录音规则怎么写?我已经尝试过clamp_max/min。但我不认为那是我想要的。对我有帮助的是 promQL 中的 if/else 构造。没有时间序列查询方面的经验也无济于事。对此的任何帮助将不胜感激。
prometheus - 在 Prometheus 警报规则中验证不同实例上的某些指标
我在普罗米修斯中有多个目标,它们会生成多个指标。我需要在多个实例上验证某个指标生成的值,并在这些值不相等时触发警报。
metric_name:treds_load_peer_db_doc_cnt
值日志:
treds_load_peer_db_doc_cnt{instance="com.peer0",ip="192.168.191.2",job="prod"} 2136589 treds_load_peer_db_doc_cnt{instance="com.peer1",ip="10.121.81.38",job="prod"} 2136590 treds_load_peer_db_doc_cnt{instance="com.peer2",ip="10.121.1.57",job="prod"} 2136590
这是我目前使用的查询:treds_load_peer_db_doc_cnt{instance="com.peer0"} != ignoring(instance,ip) treds_load_peer_db_doc_cnt{instance="com.peer1"}
这可行,但会弄乱所有标签。有没有办法一次检查所有目标中的指标并在不匹配的情况下发出警报?
prometheus - prometheus 中的多个查询抛出 No datapoints found 错误
一次运行两个查询时遇到错误。
查询1:
输出/输出:
欧瑞2:
输出/输出:
最终查询(q1/q2):
未找到数据点。
prometheus - 如何让 Prometheus 根据 Alert 标签向两个不同的 Alertmanagers 发送 Alerts?
我有以下两个警报:
如何让 Prometheus 将第一个警报发送到暴露于的一个警报管理器,alertmanager.example.com/team-foo
然后将第二个警报发送到暴露于的另一个警报管理器alertmanager.example.com/team-bar
?
我想我需要使用服务发现和重新标记,但还不能走得更远。
如果重要的话,我正在使用 prometheus-operator。
docker - 如何使用 prometheus 监控在 docker swarm 中运行的 nginx?
问题:监控 Nginx 场景:我有一个包含 4 个 Nginx 副本的 Docker 群。我需要一些基本指标,例如延迟、HTTP 状态等。我查看了knyar/nginx-lua-prometheus。它适用于单台机器,它暴露了一个端点,prometheus 可以抓取它。但在我的情况下,nginx 运行在一个集群中,如果我公开一个端口,那么docker 将对请求进行负载平衡,因此指标将不正确。
监控 docker swarm Nginx 的理想方法是什么?
jenkins-plugins - 使用 Jenkins 邮件程序 webhook 将 Alertmanager 警报发送到我的电子邮件地址
我的 Alertmanager 已启动并运行,我可以在 alertmanager 仪表板上看到所有活动警报。
现在我想要一个基于创建规则的警报电子邮件通知。
- 我尝试获取内部 smtp 详细信息,但在组织环境中似乎是一项非常繁忙的任务。
- 对于其他小任务,我们使用 Jenkins webhook 向我们的 org 电子邮件地址发送电子邮件通知,它可以正常工作。
我认为我可以做一些事情来将 alertmanager 与 Jenkins 集成并将警报发送到我的电子邮件地址,但不完全确定如何做到这一点。
我想知道是否有人可以将我重定向到相关帖子或简短的 HowTo 以实现此模型。
提前致谢。
prometheus - 为每个服务定义具有不同警报阈值的共享 Prometheus 警报
我用如下表达式定义了一些警报:
当前,当我们的任何应用程序以每分钟 10 以上的速率发出这些指标时,上述警报就会触发。
我希望能够为每个应用程序指定不同的阈值,而不是硬编码阈值 10。
例如application_1
,应该以每分钟 10 次的速度application_2
发出警报,应该以每分钟 20 次的速度发出警报,等等。
如果不为每个应用程序复制警报,这是否可能?
这个stackoverflow问题:Promethues alerting rules中的动态标签值表明使用记录规则可以实现我想要的,但是遵循这个问题的唯一答案中建议的模式会导致记录Prometheus似乎没有的规则能够解析:
prometheus - 如何使用 PromQL 的 hour() 函数?
我正在尝试在 Prometheus 的 alert.rules 文件中设置一个仅在特定时间段内触发的警报。我已经在 expr-tag 中测试了下面没有时间限制的代码块,它工作得非常好。
正如PromQL 文档:hour()状态,hour()
根据当前的 UTC 返回一个介于 0 和 23 之间的值。
但是在这里,不会触发任何警报通知。有谁知道,为什么什么都没有被解雇,我该如何解决?
编辑:我已经解决了。我不明白为什么我必须像我这样做的方式那样做,但以下工作:
替换and hour() > 5 and hour() < 22
为and ON() hour() > 5 < 22