小编eve*_*zon的帖子

基于Prometheus的Grafana图中的“即时”复选框有什么作用?

我不知道在使用Prometheus创建图形时在Grafana中“即时”选项的含义。

有任何想法吗?

grafana prometheus

17
推荐指数
2
解决办法
3765
查看次数

java.util.HashMap.containsKey(Object key)实现是否违反了java.util.Map.containsKey(Object key)文档?

java.util.Map.containsKey(Object key)文件说: @throws ClassCastException if the key is of an inappropriate type for this map.

java.util.HashMap.containsKey(Object key)实现不说什么.

我的问题:

如果我创建一个Map<String,String> map = new HashMap<>();并调用该containsKey方法Integer的值是哈希值(作为a String)但该方法不会抛出Exception.

顺便说一句:4的散列不同于散列"4".

这真的是预期的行为吗?

THX提前!

java interface hashmap

10
推荐指数
1
解决办法
225
查看次数

为Traefik定义主机和路径前端规则

我正在尝试使用Traefik在我的Docker Swarm模式集群中部署代理多个应用程序.

我已经得到它,以便它代理一个命名的主机,但我希望它代理一个命名的主机和路径,但我无法计算出我需要使用的标签.

这是docker service我使用的命令:

 docker service create \
                       \
    --label "traefik.port=9000" \
    --label "traefik.docker.network=traefik-net" \
    --label "traefik.frontend.rule=Host:`hostname -f`" \
    --label="traefik.backend=portainer" \
                                        \
    --constraint "node.role == manager" \
    -p 9000:9000 \
    --mount "type=bind,src=/var/run/docker.sock,dst=/var/run/docker.sock" \
    --name portainer \
    portainer/portainer
Run Code Online (Sandbox Code Playgroud)

如果主机是,dummy.localhost那么我可以打开portainer应用程序http://dummy.localhost.但是我想修改它以便我必须使用http://dummy.localhost/portainer.

我已经看到有一些方法可以在为Traefik使用toml文件时执行此操作,但我在部署的docker服务上使用监视模式和标签.

如何在标签中组合多个前端规则,以便可以在主机名和路径上代理此(和任何其他)应用程序?

traefik

9
推荐指数
1
解决办法
1万
查看次数

如何通过配置设置 Prometheus Alertmanager 外部 URL

我正在使用 vanilla Docker 容器来启动 Alertmanager。据我所知,在这种情况下,我无法通过参数提供外部 URL,所以我必须找到另一种方式。

是否可以通过配置文件或环境变量设置 URL?

configuration prometheus prometheus-alertmanager

9
推荐指数
3
解决办法
8639
查看次数

prometheus alertmanager"to"字段中的多个电子邮件接收者

如何在"到"字段中创建具有多个电子邮件地址的接收器配置?

email configuration monitoring prometheus

9
推荐指数
2
解决办法
3170
查看次数

如何利用外部来源丰富指标数据?

例子

我得到了一个指标系列,其标签名为 ,store其中包含storeId. 现在我想添加另一个标签storeName并用外部信息填充它(API-call/CSV/other Prometheus "metric"/merging from mysql/...)。这可能吗?如果是的话,通过哪些方式?

目标

在 Grafana 图表面板中显示生成的指标,使其包含名称而不是 ID。

grafana prometheus

9
推荐指数
1
解决办法
564
查看次数

PromQL“by”和“without”的区别不清楚

我有一个关于使用 Prometheus 摘要指标计算响应时间的问题。

我创建了一个汇总指标,其中不仅包含服务名称,还包含完整路径和 http 方法。

现在我尝试计算完整服务的平均响应时间。我阅读了关于“比率然后总和”的文章,要么我不明白计算是如何完成的,要么计算是恕我直言不正确。

据我所知,这应该是计算每秒响应时间的正确方法:

sum by(service_id) (
    rate(request_duration_sum{status_code=~"2.*"}[5m])
    /
    rate(request_duration_count{status_code=~"2.*"}[5m])
)
Run Code Online (Sandbox Code Playgroud)

我在这里理解的是为每个子集创建“每秒持续时间”(速率总和/速率计数)值,然后创建每个 service_id 的总和。

这对我来说看起来完全错误 - 但我认为它不像我理解的那样工作。

获得相同外观结果的另一种方法是:

sum without (path,host) (
    rate(request_duration_sum{status_code=~"2.*"}[5m])
    /
    rate(request_duration_count{status_code=~"2.*"}[5m])
)
Run Code Online (Sandbox Code Playgroud)
  • 但有什么区别呢?
  • 这里到底发生了什么?
  • 如果我使用“max”而不是“sum”,为什么老实说我只能得到可测量的值?

如果我忽略我阅读的所有内容,我会按以下方式尝试:

rate(sum by(service_id) request_duration_sum{status_code=~"2.*"}[5m])
/
rate(sum by(service_id) request_duration_count{status_code=~"2.*"}[5m])
Run Code Online (Sandbox Code Playgroud)

但这根本不起作用......(即时向量与范围向量等等......)。

prometheus calculation promql

8
推荐指数
2
解决办法
1万
查看次数

如何在另一个变量正则表达式中使用 Grafana 仪表板变量?

我创建了一个 Grafana 仪表板变量并尝试通过正则表达式字段过滤值。这适用于静态正则表达式定义。

我现在想在正则表达式中使用另一个变量来提供正则表达式值。

所以正则表达式字段应该看起来像:/$theRealRegexVar/

我尝试了许多不同的版本,例如/${theRealRegexVar}/或 ,/[[theRealRegexVar]]/但它似乎不起作用。

它是否以某种方式起作用或者根本不可能?

更新

数据源是prometheus。

正则表达式将是一个正则表达式;-)(例如“^.*$” - 但是用户将在其他变量中提供它)

regex variables grafana

7
推荐指数
1
解决办法
2195
查看次数

播放2个不同的视图包

我试图将我的视图从默认视图包移到mynewpackage.view.xyz.这对控制器来说不是问题.

好像他们根本没有编译.

Play 2.0 doc说:

...请注意,在Play 2.0中,控制器,模型和视图包名称约定现在就是这样,并且可以根据需要进行更改(例如使用com.yourcompany为所有内容添加前缀)....

我究竟做错了什么?

playframework-2.0

6
推荐指数
1
解决办法
3363
查看次数

如果时区设置为"UTC",SimpleDateFormat将忽略"XXX"

我试图以下列格式输出当前日期时间:2016-01-11T14:08:42 + 00:00

final SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssXXX");
formatter.setTimeZone(TimeZone.getTimeZone("UTC"));

final String dateString = formatter.format(new Date());
Run Code Online (Sandbox Code Playgroud)

"dateString"现在应包含"2016-01-11T14:08:42 + 00:00",但它包含"2016-01-11T14:08:42Z".

如果没有"UTC"时区设置,我会得到正确的格式,但是 - 当然 - 在我的特定时区...

有任何想法吗?

java timezone datetime date utc

6
推荐指数
1
解决办法
7791
查看次数