我不知道在使用Prometheus创建图形时在Grafana中“即时”选项的含义。
有任何想法吗?
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提前!
我正在尝试使用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服务上使用监视模式和标签.
如何在标签中组合多个前端规则,以便可以在主机名和路径上代理此(和任何其他)应用程序?
我正在使用 vanilla Docker 容器来启动 Alertmanager。据我所知,在这种情况下,我无法通过参数提供外部 URL,所以我必须找到另一种方式。
是否可以通过配置文件或环境变量设置 URL?
如何在"到"字段中创建具有多个电子邮件地址的接收器配置?
例子
我得到了一个指标系列,其标签名为 ,store其中包含storeId. 现在我想添加另一个标签storeName并用外部信息填充它(API-call/CSV/other Prometheus "metric"/merging from mysql/...)。这可能吗?如果是的话,通过哪些方式?
目标
在 Grafana 图表面板中显示生成的指标,使其包含名称而不是 ID。
我有一个关于使用 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)
如果我忽略我阅读的所有内容,我会按以下方式尝试:
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)
但这根本不起作用......(即时向量与范围向量等等......)。
我创建了一个 Grafana 仪表板变量并尝试通过正则表达式字段过滤值。这适用于静态正则表达式定义。
我现在想在正则表达式中使用另一个变量来提供正则表达式值。
所以正则表达式字段应该看起来像:/$theRealRegexVar/
我尝试了许多不同的版本,例如/${theRealRegexVar}/或 ,/[[theRealRegexVar]]/但它似乎不起作用。
它是否以某种方式起作用或者根本不可能?
数据源是prometheus。
正则表达式将是一个正则表达式;-)(例如“^.*$” - 但是用户将在其他变量中提供它)
我试图将我的视图从默认视图包移到mynewpackage.view.xyz.这对控制器来说不是问题.
好像他们根本没有编译.
Play 2.0 doc说:
...请注意,在Play 2.0中,控制器,模型和视图包名称约定现在就是这样,并且可以根据需要进行更改(例如使用com.yourcompany为所有内容添加前缀)....
我究竟做错了什么?
我试图以下列格式输出当前日期时间: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"时区设置,我会得到正确的格式,但是 - 当然 - 在我的特定时区...
有任何想法吗?