我们用时间序列图表sum(increase(foo_requests_total[1m]))来显示每分钟的foo请求数.请求很偶然 - 每天只有几个请求.图表中显示的值始终为1.3333.为什么价值不是1?在这一分钟内有一个请求.
Prometheus是围绕返回指标的时间序列表示而构建的.在许多情况下,但是,我只关心什么度量的状态,现在,和我有一个很难搞清楚一个可靠的方式来获得一个度量的"最近"的价值.
从现在开始每隔30秒获得一次指标,我尝试过这样的事情:
my_metric[30s]
Run Code Online (Sandbox Code Playgroud)
但这感觉很脆弱.如果指标在数据点之间的日期多于或少于30秒,那么我要么得到多于一个或零结果.
如何获取指标的最新值?
我有container_fs_usage_bytesprometheus监视容器根fs,但似乎cAdvisor中没有其他卷的指标.
我有两个不同实例的衡量标准"metric_awesome".我想要做的是从实例2中减去实例一,就像这样
metric_awesome{instance="one"} - metric_awesome{instance="two"}
Run Code Online (Sandbox Code Playgroud)
不幸的是,结果集是空的.有没有人经历过这个?
我正在使用 vanilla Docker 容器来启动 Alertmanager。据我所知,在这种情况下,我无法通过参数提供外部 URL,所以我必须找到另一种方式。
是否可以通过配置文件或环境变量设置 URL?
使用Helm已安装Prometheus并Grafana在 kubernetes 集群中:
helm install stable/prometheus
helm install stable/grafana
Run Code Online (Sandbox Code Playgroud)
它有一个alertmanage服务。
但是我看到一篇博客介绍了如何使用 yaml 文件设置 alertmanager 配置:
是否可以使用当前方式(由 helm 安装)来设置 somealert rules和 config for CPU,memory并在不创建其他 yaml 文件的情况下发送电子邮件?
我看到了一个K8S介绍configmap到alertmanager:
https://github.com/kubernetes/charts/tree/master/stable/prometheus#configmap-files
但是不清楚怎么用,怎么做。
我下载了的源代码stable/prometheus来看看它的作用。从values.yaml我发现的文件中:
serverFiles:
alerts: ""
rules: ""
prometheus.yml: |-
rule_files:
- /etc/config/rules
- /etc/config/alerts
scrape_configs:
- job_name: prometheus
static_configs:
- targets:
- localhost:9090
Run Code Online (Sandbox Code Playgroud)
https://github.com/kubernetes/charts/blob/master/stable/prometheus/values.yaml#L600
所以我认为应该自己写这个配置文件来定义警报rules和alertmanager这里。但不要清楚这个块:
rule_files: …Run Code Online (Sandbox Code Playgroud) 我有prometheus配置与许多工作,我正在通过http抓取指标.但我有一份工作,我需要通过https抓取指标.
当我访问:
我可以看到指标.我在prometheus.yml配置中添加的工作是:
- job_name: 'test-jvm-metrics'
scheme: https
static_configs:
- targets: ['ip:port']
Run Code Online (Sandbox Code Playgroud)
当我重新启动prometheus时,我可以看到我的目标上的错误:
背景截止日期已超过
我已经读过,scrape_timeout可能是问题所在,但是我把它设置为50秒仍然是同样的问题.
什么可能导致这个问题以及如何解决它?谢谢!
我有两个不同(但相关的指标)。
metric_1(id="abc",id2="def")
metric_2(id="abc",id2="def")
Run Code Online (Sandbox Code Playgroud)
我的最终目标是在 Grafana 中实现以下目标。我计划使用“即时”值和 Grafana 的表可视化小部件来显示这些数据。
id id2 metric1 metric2
abc def 1 2
Run Code Online (Sandbox Code Playgroud)
我应该使用什么查询/加入/重新标记来实现这一点?
先感谢您!:)
我知道 CPU 利用率是由非空闲时间占 CPU 总时间的百分比给出的。在普罗米修斯,rate或irate函数计算向量数组的变化率。
人们通常通过以下 PromQL 表达式来计算 CPU 利用率:
(100 - (avg by (instance) (rate(node_cpu_seconds_total{mode="idle"}[1m])) * 100))
Run Code Online (Sandbox Code Playgroud)
我不明白计算非空闲时间的每秒变化如何等同于计算 CPU 使用率。有人可以从数学上解释为什么这是有道理的吗?
我在 Kubernetes 中运行 Prometheus 并遇到一些 kube 状态指标连接错误。试图检查日志,但无法在日志中看到连接失败。无论如何,是否可以启用 Prometheus 的详细日志记录?