理解Graphite及其工作原理?
我打算用Graphite来监控各种服务。现在我想了解一下Graphite的工作原理,以下是我的理解:
Whisper:这个是用来把数据以时间序列的形式存储到数据库里的。数据库可以是像sqlite、Mysql、Db2这样的例子吗?
Carbon:这个组件负责接收指标数据,然后把数据发送给whisper保存到数据库里?这是不是意味着我可以用任何编程语言写个程序,把指标数据发送给carbon?我需要哪些参数才能连接到carbon并发送数据呢?
Graphite-webapp:Graphite-webapp是用来读取whisper存储在数据库里的时间序列数据吗?它会自己生成图表吗?还是说我们需要用python编程来显示图表?我们该如何创建一个KPI仪表盘来展示这些图表呢?
我只是看了一遍文档,有人能帮我理解一下Graphite的架构吗?我可以使用哪些工具或框架?我主要是Java/PHP/NODEJS的开发者,所以尽量想避免用python :),如果有教程或示例就太好了。
我有下面这种格式的数据,保存在一个平面文件里,我需要把它发送到Graphite,以便显示图表。
DATE TIME Col1 Col2
2014-07-04 04:05:10 499 303