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"