úterý 25. února 2014

Perl modul Zabbix-API

Na stránkách Zabbix v Download v sekci 3rd Party Tools je uveden Perl modul  Zabbix::API. Bohužel jsem jej nenašel nikde v repository Debian ani v portech FreeBSD.

A tak jsem se pokusil modul instalovat ručně pomoci Module::Build.

cd /usr/ports/devel/p5-JSON-RPC && make install
cd /tmp/ && fetch http://search.cpan.org/CPAN/authors/id/F/FG/FGA/Zabbix-API-0.009.tar.gz
tar xvzf Zabbix-API-0.009.tar.gz && cd /tmp/Zabbix-API-0.009

 
perl Build.PL
Created MYMETA.yml and MYMETA.json
Creating new 'Build' script for 'Zabbix-API' version '0.009'
./Build
Building Zabbix-API
./Build test
...
./Build install
...
FreeBSD: Registering installation in the package database
Can't open file Makefile: No such file or directory at (eval 35) line 2


Upravíme si konfigurační soubor, který se v ukázce používá a vyžívá modulu p5-YAML.


vi /root/.zabbixrc
host: http://zabbix.hide.lukasmaly.net/zabbix/api_jsonrpc.php
user: zbxuser
password: xzy123


Pro otestování můžeme použít ukázku autora modulu.

cp /tmp/Zabbix-API-0.009/examples/fetch-all-hosts.pl ./ && chmod 700 fetch-all-hosts.pl

./fetch-all-hosts.pl
---
available: 1
disable_until: 0
error: ''
errors_from: 0
flags: 0
host: fbsdserver
hostid: 10084
ipmi_authtype: -1
ipmi_available: 0
ipmi_disable_until: 0
ipmi_error: ''
ipmi_errors_from: 0
ipmi_password: ''
ipmi_privilege: 2
ipmi_username: ''
jmx_available: 0
jmx_disable_until: 0
jmx_error: ''
jmx_errors_from: 0
lastaccess: 0
maintenance_from: 0
maintenance_status: 0
maintenance_type: 0
maintenanceid: 0
maintenances: []
name: Zabbix server
proxy_hostid: 0
snmp_available: 0
snmp_disable_until: 0
snmp_error: ''
snmp_errors_from: 0
status: 0
templates:
  - hostid: 0
    templateid: 0
---
...


Nevýhodou tohoto postupu je, že systém o tomto modulu nic neví a tak se problematicky aktualizije. Časem se modul objeví v repositářích mnoha systémů.

Žádné komentáře: