Zabbix – monitorování lowendových tiskáren od Minolty

V případě, že monitoruji stav spotřebního materiálu v černobílých tiskárnách Konica Minolta, obvykle používám tato SNMP OID:

Black Toner - .1.3.6.1.2.1.43.11.1.1.9.1.1
Black Toner Capacity - .1.3.6.1.2.1.43.11.1.1.8.1.1

Ve výsledku se vrátí např. tyto hodnoty:
Black Toner – 4100
Black Toner Capacity – 10000,
takže mohu vypočítat Black Toner Percentage v [%], což je např. v tomto případě 41%.

Bohužel, nové malé tiskárny od Minolty (Brotheru) nevrací to, co by člověk čekal. Na aktuální stav toneru vrátí hodnotu (-3) anebo (0), kde (-3) znamená „OK“ a (0) znamená „prázdný“. Čítače tedy nenabízí jinou normální možnost, jak zjistit stav množství toneru (max z otáček a pokrytí). Tudíž jsem byl dotlačen ke sledování stavu toneru z webserveru tiskárny, kde je po příhlášení v oddílu „Maintenance information“ tato informace dostupná.

Na Zabbix Serveru jsem ve složce /usr/local/share/zabbix/externalscripts vytvořil soubor s právy pro spuštění uživatelem zabbix. Cílem skriptu je přihlásit se heslem na web tiskárny (přístup uložen v cookies), načíst stránku a z ní dostat hodnotu množství toneru. Z ní jsem musel ještě osekat [%], aby byla vyhodnocována jako číslo a ne jako text. Číslo lze následovně zanést do grafu.


zabbix@zabbix_server:/usr/local/share/zabbix/externalscripts# cat bizhub_4000_toner
#!/bin/sh
COOKIES=`mktemp`
CURL=/usr/bin/curl

# 1) přihlášení pro získání AuthCookie
$CURL --silent --cookie-jar $COOKIES --form "B554=<PASSWORD>" --form "loginurl=/general/status.html" "http://<IP ADDRESS OF PRINTER>/general/status.html" -o /dev/null

# 2) získání hodnoty (díky AuthCookie)
$CURL --silent --cookie $COOKIES http:///general/information.html?kind=item | sed 's/</\n/g' | grep Toner -A 5 |  grep % | sed -E 's/[^0-9]*([0-9]+\%).*/\1/' | sed 's/%//g'

rm $COOKIES


Dále jsem pro šablonu tiskárny vytvořil External check, který vyčítá hodnotu množství toneru.


Výsledkem je hodnota 90%.

Comments are closed.