0

我正在通过 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"

4

1 回答 1

3

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

根据Ubuntu Forums的建议,您的值应该类似于:

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

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

于 2014-04-05T18:42:58.537 回答