我通过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”
答案 0 :(得分:2)
看起来您的脚本没有提供正确的值类型。
根据Ubuntu Forums的建议,您的值应该是:
$HOSTNAME/digitempo/temperature-Sauna
和$HOSTNAME/digitempo/temperature-Ulko
这将确保使用temparature
中的/usr/share/collectd/types.db
类型。