问题标签 [prometheus]
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.
consul - Prometheus:如何根据 Consul 标签删除目标
我的 Prometheus 服务器从 Consul 获取目标列表(或“服务”,用 Consul 的术语来说)。我只想监控这些目标的一个子集。这应该可以通过 Prometheus 的正则表达式机制实现,但正确的配置让我望而却步。这是怎么做到的?
grafana - Prometheus/Grafana 反单调性
有没有办法让 Grafana 中的 Prometheus 计数器真正单调?
每当服务器重新启动时,我的服务器上的计数器(使用 Prometheus Java 库)都会重置,并且 Grafana 中的计数器也降为零。我在 Prometheus 查询的文档中找不到方法。Java 库也没有提供使 Counter 在重新启动时保持不变的方法。
amazon-web-services - Prometehus 目标无效的 Urls 语法
我正在尝试添加我在 AWS EC2 容器中配置的目标
但是我收到一条错误消息,认为我的 URL 无效。如何获得正确的 URL 语法?
consul - Prometheus + Consul:为每个 Consul 服务器创建 2 个目标(复制目标)
我正在使用 Prometheus + Consul 进行服务发现——一个很棒的组合。在 Consul 发现的服务(目标,用普罗米修斯的术语来说)中,有 Consul 服务器本身。这很有用——我也想监控服务器,而不仅仅是 Consul 客户端。
事实上,我希望对这些服务器进行两次抓取——本质上是从每台服务器上的2 个不同端口读取指标。
我不确定如何实现这一点:我无法控制 Consul 服务器向 Prometheus 公开的关于它们自己的信息。
理想情况下,这可以通过 Prometheus 配置中的一些正则表达式操作来执行:我知道如何从列表中删除目标并且我知道如何改变目标 - 但是可以复制目标吗?有一些正则表达式的魔法吗?
kubernetes - Spring Boot 和普罗米修斯
我试图弄清楚如何最好地从 Kubernetes 集群中运行的一组基于 Spring Boot 的服务中收集指标。查看各种文档,在 Prometheus 的情况下,似乎内部监控的选择是在 Actuator 或 Spectator 之间,指标被推送到 Redis 或 StatsD 等外部集合存储或拉取。
由于给定服务的实例数量会有所不同,我看不出如何配置 Prometheus 来轮询那些正在运行的服务,因为它缺乏对它们的了解。我还在围绕 Eureka 服务注册表进行构建,因此不确定在此配置中是否首先对其进行轮询。
任何对这种方法的真实世界见解都将受到欢迎。
docker - Prometheus 用于监控多台服务器上的 docker 容器
我是普罗米修斯的新手。
我想监视许多服务器中的所有 docker 容器。情况是这样的:
- 我有 3 台服务器 -> 服务器 A、B 和 C(全部运行 Ubuntu)。
- 每台服务器都有许多用于不同项目的 docker 容器。
- 我将添加一台服务器(服务器 D),我想在这台服务器上安装 Prometheus。
我的问题:
- 是否有可能,如果我想将 Prometheus 安装到服务器 D 并监控服务器 A、B 和 C 中的所有 docker 容器?
- 如果我想监控按项目排序的所有容器,是否有可能?例如,我使用 Gravana dashborad。我可以为每个项目使用一个 Gravana 仪表板吗?
prometheus - 如何在 Prometheus 中生成平均值
我有两个柜台。一个是测量累加器,另一个是测量计数。如何生成范围向量平均值?
我尝试了以下但得到空结果。
我想生成一个向量,我可以将其放入 Grafana 图中以绘制随时间变化的平均值。
consul - 从服务发现中删除除一个节点外的所有节点
我们使用 Consul 服务发现机制来获取代理列表,我们通过这些代理列表来抓取某些目标。有多个冗余代理,但最终它们都提供完全相同的信息。
现在我们希望重新标记始终删除从 SD 返回的一个(随机)节点以外的所有节点。它不能被硬编码,因为代理的名称和数量可以并且将会改变。
在查看了重新标记实现之后,我认为这是不可能的,但也许有一些聪明的技巧可以实现这一点。
问题:是否可以从 Prometheus 服务发现中删除除一个(随机)节点之外的所有节点?
prometheus - 从 Prometheus 查询中的返回值生成范围向量
我有一个计数器类型的度量varnish_main_client_req,我想设置一个警报,如果请求率在给定时间内下降/上升一定量(例如“最近 2 分钟内偏离的请求量!”),就会触发警报。
使用deriv()函数应该比比较相对值更好,但它只能与仪表一起使用。是否有可能转换一个不断增加的指标。与额定指标相反。测量?
查询:deriv(rate(varnish_main_client_req[2m])[5m])
期望:Prometheus 计算过去 2 分钟内客户端请求的速率,并返回过去 5 分钟内结果值的导数。
实际结果:
“错误”:“在字符 48 处解析错误:范围规范必须以度量选择器开头,但要跟在 *promql.Call 之后”
记录规则可能是一种选择,但对于应该与查询一起使用的东西来说,它感觉像是一种廉价的解决方法:
my_gauge_metric = rate(some_counter_metric[2m])
docker - Docker - Prometheus 容器立即死亡
我有 cadvisor 使用端口映射 4000:8080 运行,我必须将它与带有 prometheus 的容器链接。
我的 prometheus.yml 是:
该文件的路径为 /home/test/prometheus.yml。要使用 prometheus 运行容器,我会:
容器被创建,但它立即死亡。你能告诉我问题出在哪里吗?
留言形式docker events&
: