Munin输出json而不是图表

时间:2013-06-19 03:40:47

标签: linux statistics munin

我想使用munin来收集系统统计信息并将其保存在数据库中。但我找不到任何方法来获取munin收集的原始统计数据。有没有办法让munin收集原始数据并用它创建图形?

3 个答案:

答案 0 :(得分:1)

另一种可能性是使用rrdtool命令访问历史数据,例如使用像rrdtool fetch /var/munin/{domain}/{something}.rrd AVERAGE这样的东西(这是FreeBSD系统上数据文件的路径,在Linux上可能是/ var / lib / munin左右)。

答案 1 :(得分:0)

您可以使用

以xml格式导出munin(或更确切地说是基础rrdtool)数据
rrdtool xport \
      --start now-1h --end now \
      DEF:xx=host-inout.lo.rrd:output:AVERAGE \
      DEF:yy=host-inout.lo.rrd:input:AVERAGE \
      CDEF:aa=xx,yy,+,8,* \
      XPORT:xx:"out bytes" \
      XPORT:aa:"in and out bits"

生成的元数据部分(值取决于RRD特征):

<meta>
<start>1020611700</start>
<step>300</step>
<end>1020615600</end>
<rows>14</rows>
<columns>2</columns>
<legend>
  <entry>out bytes</entry>
  <entry>in and out bits</entry>
</legend>

结果数据部分是:

<data>
<row><t>1020611700</t><v>3.4000000000e+00</v><v>5.4400000000e+01</v></row>
<row><t>1020612000</t><v>3.4000000000e+00</v><v>5.4400000000e+01</v></row>
<row><t>1020612300</t><v>3.4000000000e+00</v><v>5.4400000000e+01</v></row>
<row><t>1020612600</t><v>3.4113333333e+00</v><v>5.4581333333e+01</v></row>
<row><t>1020612900</t><v>3.4000000000e+00</v><v>5.4400000000e+01</v></row>
<row><t>1020613200</t><v>3.4000000000e+00</v><v>5.4400000000e+01</v></row>
<row><t>1020613500</t><v>3.4000000000e+00</v><v>5.4400000000e+01</v></row>
<row><t>1020613800</t><v>3.4000000000e+00</v><v>5.4400000000e+01</v></row>
<row><t>1020614100</t><v>3.4000000000e+00</v><v>5.4400000000e+01</v></row>
<row><t>1020614400</t><v>3.4000000000e+00</v><v>5.4400000000e+01</v></row>
<row><t>1020614700</t><v>3.7333333333e+00</v><v>5.9733333333e+01</v></row>
<row><t>1020615000</t><v>3.4000000000e+00</v><v>5.4400000000e+01</v></row>
<row><t>1020615300</t><v>3.4000000000e+00</v><v>5.4400000000e+01</v></row>
<row><t>1020615600</t><v>NaN</v><v>NaN</v></row>

我使用xml导出生成图表,使用JavaScript进行http://pi.tafkas.net/temperatures/

的家庭温度监控

答案 2 :(得分:-1)

Munin依靠其插件来收集统计数据。尽管插件可以用几乎任何语言编写,但大多数是某种类型的脚本(shell,Perl,Python等)。查看每个插件(您想要使用的)以查看数据的收集方式。你应该能够编写自己的,然后编写它(就像munin一样),这样它每5分钟就会获得一个度量标准(或者你想要多长时间)。

在绘制一些较大的数据集时(例如,绘制一年的数据),您可能需要编写其他脚本来聚合数据。那个和/或脚本在一段时间后摆脱数据。