Если честно, то заголовок конечно слишком громкий и на самом деле всё несколько проще. Zabbix хорош всем но вот незадача для комфортной работы с ним есть два пути. Первый это веб-интерфейс, и второй — Zabbix API. Второй отсекаю сразу так …
Читать далее »
Если честно, то заголовок конечно слишком громкий и на самом деле всё несколько проще.
Zabbix хорош всем но вот незадача для комфортной работы с ним есть два пути. Первый это веб-интерфейс, и второй — Zabbix API. Второй отсекаю сразу так как программист из меня никакой, а с веб-мордой всё как бы хорошо пока не захочешь посмотреть на собранные данные из консоли находясь скажем в серверной или удалённо.
Скрипт приведенный ниже это не полноценный (само собой :-D ) CLI доступ до Zabbix-сервера, а лишь инструмент для просмотра последних записей по любому item’у любого хоста.
Итак:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | #!/bin/bash mysql -se "SELECT hostid,name FROM hosts WHERE status<>3 ORDER BY name" -D zabbix_zabbix -t echo -n "Выберите Host: " read host mysql -se "SELECT itemid,name,key_ FROM items WHERE hostid=$host" -D zabbix_zabbix -t echo "=============" echo -n "Выберите item: " read item type=`mysql -se "SELECT value_type from items WHERE itemid=$item" -D zabbix_zabbix` clear case $type in 0) mysql -se "SELECT value from history where itemid=$item LIMIT 0, 200" -D zabbix_zabbix ;; 2) mysql -se "SELECT value from history_log where itemid=$item LIMIT 0, 200" -D zabbix_zabbix ;; 3) mysql -se "SELECT value from history_uint where itemid=$item LIMIT 0, 200" -D zabbix_zabbix ;; 4) mysql -se "SELECT value from history_text where itemid=$item LIMIT 0, 200" -D zabbix_zabbix ;; *) echo "ERROR" echo "$type" ;; esac
|
В двух задаваемых вопросах надо указывать значение первого поля, а не название. Если, кому-то очень хочется, то цифру 200 в основном блоке можно сделать переменной и таким образом выводить столько последних значений сколько необходимо. Если есть какие-то вопросы то пишите в комментарии или на e-mail.