Ubuntu-12.04

collectd 在 ubuntu 12.04 中儲存 NaN 而不是正確的值

  • April 29, 2015

我在我的 ubuntu 12.04 上使用 sudo apt-get install collectd 安裝了 collectd,但它只是在 rrd 文件中收集 NaN 值。例如,對於名為 memory-used.rrd 的文件,這是它保存的值。

0003 10 1366005779

<ds>
   <name> value </name>
   <type> GAUGE </type>
   <minimal_heartbeat>20</minimal_heartbeat>
   <min>0.0000000000e+00</min>
   <max>2.8147497671e+14</max>

   <!-- PDP Status -->
   <last_ds>1807986688.000000</last_ds>
   <value>1.6271880192e+10</value>
   <unknown_sec> 0 </unknown_sec>
</ds>

<!-- Round Robin Archives -->
<rra>
   <cf>AVERAGE</cf>
   <pdp_per_row>1</pdp_per_row> <!-- 10 seconds -->

   <params>
   <xff>1.0000000000e-01</xff>
   </params>
   <cdp_prep>
       <ds>
       <primary_value>1.8075664384e+09</primary_value>
       <secondary_value>0.0000000000e+00</secondary_value>
       <value>NaN</value>
       <unknown_datapoints>0</unknown_datapoints>
       </ds>
   </cdp_prep>
   <database>
       <!-- 2013-04-15 07:13:00 IRDT / 1365993780 --> <row><v>NaN</v></row>
       <!-- 2013-04-15 07:13:10 IRDT / 1365993790 --> <row><v>NaN</v></row>
       <!-- 2013-04-15 07:13:20 IRDT / 1365993800 --> <row><v>NaN</v></row>
       <!-- 2013-04-15 07:13:30 IRDT / 1365993810 --> <row><v>NaN</v></row>
       <!-- 2013-04-15 07:13:40 IRDT / 1365993820 --> <row><v>NaN</v></row>
       <!-- 2013-04-15 07:13:50 IRDT / 1365993830 --> <row><v>NaN</v></row>
                   .........
</database>
</rra>

對collectd進行故障排除的一種非常有效的方法:

  • 啟用盡可能少的讀取外掛(例如在您的案例記憶體中
LoadPlugin memory
  • 啟用csv寫入外掛
LoadPlugin csv
<Plugin csv>
 DataDir "/tmp/collectd-csv"
</Plugin>
  • 啟用日誌文件外掛
<Plugin logfile>
  File STDOUT
  ## Only available if compiled using --enable-debug
  # LogLevel debug
  ##
  LogLevel info
</Plugin>
  • 在前台執行collectd
collectd -C /path/to/collectd.conf -f
  • 查看您的csv目錄,如果有任何報告

如果一切正常,下一步就是對rrdtool外掛進行故障排除。

引用自:https://serverfault.com/questions/499378