RRD: Сбор информации с UPS через NUT: различия между версиями
Материал из Linux Wiki
Перейти к навигацииПерейти к поиску
Rain (обсуждение | вклад) |
Rain (обсуждение | вклад) |
||
Строка 1: | Строка 1: | ||
==Создание базы== | ==Создание базы== | ||
База создается с именем '''/home/stats/power.mustek600.$HOSTNAME.rrd''', интервал добавления данных - '''5 секунд''', 3 поля для информации по загрузке за 5, 10 и 15 минут, замеры с 4-мя ступенями разрешения: | |||
* С разрешением в 5 секунд интервал в 100 минут (больше часа) | |||
* С разрешением в 40 секунд интервал в 33 часа (больше суток) | |||
* C разрешением в 5 минут интервал в 37 дней (больше месяца) | |||
* С разрешением в 1,5 часа интервал в 1,3 года (год и 3 месяца) | |||
---- | ---- | ||
<source lang=bash> | <source lang=bash> | ||
rrdtool create power.mustek600.$HOSTNAME.rrd --step 5 DS:inputv:GAUGE:10:U:U DS:outputv:GAUGE:10:U:U DS:charge:GAUGE:10:U:U DS:load:GAUGE:10:U:U RRA:AVERAGE:0.5:1:1200 RRA:AVERAGE:0.5:8:3000 RRA:AVERAGE:0.5:64:10000 RRA:AVERAGE:0.5:512:16000 | rrdtool create /home/stats/dbs/power.mustek600.$HOSTNAME.rrd --step 5 \ | ||
DS:inputv:GAUGE:10:U:U \ | |||
DS:outputv:GAUGE:10:U:U \ | |||
DS:charge:GAUGE:10:U:U \ | |||
DS:load:GAUGE:10:U:U \ | |||
RRA:AVERAGE:0.5:1:1200 \ | |||
RRA:AVERAGE:0.5:8:3000 \ | |||
RRA:AVERAGE:0.5:64:10000 \ | |||
RRA:AVERAGE:0.5:512:16000 | |||
</source> | </source> | ||
Версия 23:54, 3 декабря 2008
Создание базы
База создается с именем /home/stats/power.mustek600.$HOSTNAME.rrd, интервал добавления данных - 5 секунд, 3 поля для информации по загрузке за 5, 10 и 15 минут, замеры с 4-мя ступенями разрешения:
- С разрешением в 5 секунд интервал в 100 минут (больше часа)
- С разрешением в 40 секунд интервал в 33 часа (больше суток)
- C разрешением в 5 минут интервал в 37 дней (больше месяца)
- С разрешением в 1,5 часа интервал в 1,3 года (год и 3 месяца)
rrdtool create /home/stats/dbs/power.mustek600.$HOSTNAME.rrd --step 5 \
DS:inputv:GAUGE:10:U:U \
DS:outputv:GAUGE:10:U:U \
DS:charge:GAUGE:10:U:U \
DS:load:GAUGE:10:U:U \
RRA:AVERAGE:0.5:1:1200 \
RRA:AVERAGE:0.5:8:3000 \
RRA:AVERAGE:0.5:64:10000 \
RRA:AVERAGE:0.5:512:16000
Сбор информации
Скрипт для сбора информации о текущем состоянии ЮПС через upsc, входящий в состав Network UPS Tools и занесении данных в RRD-базу. В качестве первого параметра передается имя базы, остальные параметры напрямую передаются upsc.
#!/bin/bash
dbfile="$1"
if [ -z "${1}" ]; then
echo -e "
\e[32mUsage: \e[31m$0 \e[33mRRDBFILE \e[36mUPSNAME
\e[32mExample: \e[31m$0 \e[33m/home/$USER/myups.rrd \e[36mmyups1000va
\e[0m"
exit 2
fi
if [ ! -e "${dbfile}" ]; then
echo -e "\e[31mError: Database \e[33m\"${dbfile}\" \e[31mnot exist\e[0m"
exit 1
fi
if [ ! -e /bin/upsc ]; then
echo -e "\e[31mError: \e[35m/bin/upsc:\e[31m no such file\e[0m"
exit 3
fi
shift
if /bin/upsc "${@}" ; then
rrdtool update "${dbfile}" $(/bin/upsc "${@}" | awk '
/battery.charge:/{charge=$2}
/input.voltage:/{inv=$2}
/output.voltage:/{outv=$2}
/ups.load:/{load=$2}
END {print systime()":"inv":"outv":"charge":"load}
')
else
echo "\e[31mError: Can't get info about \e[36"${@}"\e[0m"
fi