Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用Graphite进行统计-来自无服务器基础架构_Java_Kubernetes_Graphite_Codahale Metrics - Fatal编程技术网

Java 使用Graphite进行统计-来自无服务器基础架构

Java 使用Graphite进行统计-来自无服务器基础架构,java,kubernetes,graphite,codahale-metrics,Java,Kubernetes,Graphite,Codahale Metrics,我从一个新的应用程序开始,它打算按照无服务器基础设施的理念,以更“云”的方式运行,不再有“机器”的概念,而只是在某处运行的应用程序 由于Graphite只知道“绝对”值,通常情况下,服务器的主机名将被编码在度量路径中以处理并发性。(例如,applicationname.webserver\u 1.requestCount)。使用Graphite函数,可以在构建图形时轻松合并数据 但是当我在无服务器的环境中运行时,主机名不再存在于传统意义上的主机名-每次重新启动或部署应用程序时,都会为其生成一个新

我从一个新的应用程序开始,它打算按照无服务器基础设施的理念,以更“云”的方式运行,不再有“机器”的概念,而只是在某处运行的应用程序

由于Graphite只知道“绝对”值,通常情况下,服务器的主机名将被编码在度量路径中以处理并发性。(例如,
applicationname.webserver\u 1.requestCount
)。使用Graphite函数,可以在构建图形时轻松合并数据

但是当我在无服务器的环境中运行时,主机名不再存在于传统意义上的主机名-每次重新启动或部署应用程序时,都会为其生成一个新的随机主机名。我现在想知道的是,如何最好地处理这个问题。我不能使用主机名,因为这样我很快就会得到数百个不同的主机名和一个完全不可用的graphite后端。这个用例中的最佳实践是什么

作为旁注-这不仅用于测量计数器,还用于测量响应时间(将应用p99函数)

我想使用dropwizard度量(正式称为codahale度量)向grahite发送消息,但这应该只是一个实现细节


非常感谢你的帮助

目前的计划不是直接发送给Graphite,而是通过StatsD,StatsD能够进行必要的聚合。在这种情况下,不需要嵌入主机名


谢谢你的建议!:)

目前的计划不是直接发送给Graphite,而是通过StatsD,StatsD能够进行必要的聚合。在这种情况下,不需要嵌入主机名


谢谢你的建议!:)

IIRC在dropwizard中,您可以从度量的名称中排除主机名。@deniszh问题是graphite需要它们。计数器将作为绝对值而不是相对值发送给graphite。如果两个应用程序实例并行地向相同的度量名称发送计数器,那么graphite将执行一些疯狂的操作,比如获取平均值。或者我在这种情况下错了吗?是的,如果你使用计数器,那是真的。在这种情况下(许多短期指标),Graphite不太适合IMO。您可以在Graphite服务器上运行一些清理脚本,但这看起来不是一个好的解决方案。在dropwizard中,您可以从指标名称中排除主机名。@deniszh问题是Graphite需要它们。计数器将作为绝对值而不是相对值发送给graphite。如果两个应用程序实例并行地向相同的度量名称发送计数器,那么graphite将执行一些疯狂的操作,比如获取平均值。或者我在这种情况下错了吗?是的,如果你使用计数器,那是真的。在这种情况下(许多短期指标),Graphite不太适合IMO。您可以在Graphite服务器上运行一些清理脚本,但它看起来不是一个好的解决方案。