Назад | Перейти на главную страницу

Плагин munin всегда отключен

Я хочу использовать munin для построения графика ttyACM0 в Linux, но munin не может создать график. Я нашел информацию в "munin-node.log". он показывает, что истекло время ожидания «Температура обслуживания». Поэтому я изменил тайм-аут на 60 или 120 в /munin/plugin-conf.d/munin-node, Но это не работает. Также истекло время ожидания.

Вот часть моего кода:

    if [ "$1" = "config" ]; then
            echo 'graph_title Temperature of board'
            echo 'graph_args --base 1000 -l 0'
            echo 'graph_vlabel temperature(°C)'
            echo 'graph_category temperature'
            echo 'graph_scale no'
            echo 'graph_info This graph shows the temperature of board'

    for i in 1 2 3 4 5; do
                    case $i in
                            1)
                            TYPE="Under PCB"
                            ;;
                            2)
                            TYPE="HDD"
                            ;;
                            3)
                            TYPE="PHY"
                            ;;
                            4)
                            TYPE="CPU"
                            ;;
                            5)
                            TYPE="Ambience"
                            ;;
                    esac
                    name=$(clean_name $TYPE)
                    if [ "$TYPE" != "NA" ]; then
                            echo "temp_$name.label $TYPE";
                    fi
            done
            exit 0
fi

            for i in 1 2 3 4 5; do
                    case $i in
                            1)
                            TYPE="Under PCB"
                            VALUE=$(head -1 /dev/ttyACM0 | awk '{print $1}')
                            ;;
                            2)
                            TYPE="HDD"
                            VALUE=$(head -1 /dev/ttyACM0 | awk '{print $2}')
                            ;;
                            3)
                            TYPE="PHY"
                            VALUE=$(head -1 /dev/ttyACM0 | awk '{print $3}')
                            ;;
                            4)
                            TYPE="CPU"
                            VALUE=$(head -1 /dev/ttyACM0 | awk '{print $4}')
                            ;;
                            5)
                            TYPE="Ambience"
                            VALUE=$(head -1 /dev/ttyACM0 | awk '{print $5}')
                            ;;
                    esac

                    name=$(clean_name $TYPE)
                    if [ "$TYPE" != "NA" ]; then
                            echo "temp_$name.value $VALUE"
                    fi

С точки зрения Munin, код вашего плагина выглядит правильно.

Основываясь на этом коде, я подозреваю, что все, что пишется в ttyACM0, этого не сделано или должно быть опрошено, прежде чем что-либо писать. Если из / dev / ttyACM0 нечего читать, головные вызовы будут блокироваться (ждать), пока не станут доступны другие данные.

Если это коммерческий датчик температуры, я бы проверил, есть ли для него поддерживаемый инструмент командной строки, и использовал бы его при написании плагина munin.