收集Exec插件和digitemp

时间:2013-11-25 10:42:02

标签: bash shell plugins exec collectd

我通过collectd Exec插件运行此脚本:

#!/bin/bash
HOSTNAME="${COLLECTD_HOSTNAME:-`hostname -f`}"
INTERVAL="${COLLECTD_INTERVAL:-15}"

while sleep "$INTERVAL"
do
        TEMP=$(cat /home/anon/dt/temp-Sauna)
        if [ $? -ne 0 ]
        then
                TEMP="U"
        fi
        echo "PUTVAL $HOSTNAME/digitempo/Sauna interval=$INTERVAL N:$TEMP"
        TEMP=$(cat /home/anon/dt/temp-Ulko)
        if [ $? -ne 0 ]
        then
                TEMP="U"
        fi
        echo "PUTVAL $HOSTNAME/digitempo/Ulko interval=$INTERVAL N:$TEMP"

done

文件temp-Sauna和temp-Ulko有温度值,如12.33。 当我重新启动collectd Exec插件启用时,它正常启动,syslog没有任何错误,但collectd没有为digitempo / Ulko或digitempo / Sauna生成新的RRD文件。

那么我的脚本可能有什么问题吗?

我使用Exec插件运行此脚本的方式是:exec“anon:dialout”“sh”“/ home / anon / lampo.sh”

1 个答案:

答案 0 :(得分:2)

看起来您的脚本没有提供正确的值类型。

根据Ubuntu Forums的建议,您的值应该是:

  • $HOSTNAME/digitempo/temperature-Sauna
  • $HOSTNAME/digitempo/temperature-Ulko

这将确保使用temparature中的/usr/share/collectd/types.db类型。