我开始使用一个新的应用程序,该应用程序旨在以更加“ Cloud ”的方式运行,遵循无服务器基础架构的概念,其中不再存在“机器”的概念,而只是在某个地方运行的应用程序 .
由于Graphite只知道"absolute"值,因此服务器的主机名通常会在度量标准路径中进行编码以处理并发 . (例如 applicationname.webserver_1.requestCount
) . 使用Graphite函数,可以在构建图形时轻松合并数据 .
However 当我在服务器较少的环境中运行时,主机名在经典意义上不再存在 - 每次重新启动或部署应用程序时,都会为其生成一个新的随机主机名 . 我现在想知道的是 - 如何最好地处理这个问题 . 我无法使用主机名,因为这样我最终会得到数百个不同的主机名,并且完全无法使用石墨后端 . 这个用例中的最佳实践是什么?
作为旁注 - 这不仅可以测量计数器,还可以测量响应时间(将应用p99功能) .
我想使用dropwizard-metrics(正式称为codahale指标)向grahite发送消息,但这应该只是一个实现细节 .
非常感谢你的帮助 .
1 回答
现在的计划是不直接发送到Graphite,而是通过StatsD,它能够进行必要的聚合 . 在这种情况下,不需要嵌入主机名 .
谢谢你的建议! :)