我想使用munin来收集系统统计信息并将其保存在数据库中。但我找不到任何方法来获取munin收集的原始统计数据。有没有办法让munin收集原始数据并用它创建图形?
答案 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分钟就会获得一个度量标准(或者你想要多长时间)。
在绘制一些较大的数据集时(例如,绘制一年的数据),您可能需要编写其他脚本来聚合数据。那个和/或脚本在一段时间后摆脱数据。