我们正在努力研究石墨是否适合我们的使用案例。所以我们有很多公共参数。像键值对一样。 说:
数据: 来电显示:ABC 网站:XYZ Http状态:400 6-7更多相似字段(键值对)。
等
此数据会持续过帐以用于数据报告。我们想要的是对这些数据进行可视化。
我们希望图表可以显示网站上有多少400个等等。这些网站是400个以上的热门网站或来电者。
现在我们想知道这是否可以用石墨完成。
但我们有疑问。石墨存储数值。那么我们将如何用石墨代表这一点。
这样的东西?
Clicks.metric.status.400 1 currTime
Clicks.metric.site.xyz 1 currTime
Clicks.metric.caller.abc 1 currTime
添加1作为记录事件的数值。
另外,我们将如何将这组值组合在一起。
例如,此http状态适用于此站点,因为它是一条记录。 在这种情况下,我们需要像
这样的东西Clicks.metric.status.{uuid1}.400 1 currTime
Clicks.metric.site.{uuid1}.xyz 1 currTime
我们的目标是然后使用grafana来绘制这些数据的图表,因为哪些顶级网站显示400状态? 这样可以吗? 问候
答案 0 :(得分:0)
Graphite接受三种类型的数据:plaintext, pickled, and AMQP。
明文协议是最直接的协议支持 通过Carbon。
发送的数据必须采用以下格式:
<metric path> <metric value> <metric timestamp>
。然后,碳将有助于翻译这条线 将文本转换为Web界面和Whisper理解的指标。
如果你是石墨的新手(听起来像你),明文绝对是最容易使用的。
至于如何对指标进行分组并对其执行操作,您必须记住,石墨本身不会存储任何这些。它存储timeseries metrics,并提供操作该数据的功能,以便进行可视/报告。因此,当您发送指标prod.host-abc.application-xyz.grpc.GetStatus.return-codes.400 1 1522353885
时,您所做的只是在时间戳1
存储该特定指标的值1522353885
。然后,您可以使用石墨函数显示该数据,例如:sumSeries(prod.*.application-xyz.grpc.GetStatus.return-codes.400)
将从所有主机生成sum
个400
个错误代码。