PHP code example of intellitrend / zabbixapi
1. Go to this page and download the library: Download intellitrend/zabbixapi library . Choose the download type require .
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
intellitrend / zabbixapi example snippets
use IntelliTrend\Zabbix\ZabbixApi;
$zbx = new ZabbixApi();
use IntelliTrend\Zabbix\ZabbixApi;
$zbx = new ZabbixApi();
use IntelliTrend\Zabbix\ZabbixApi;
$zbx = new ZabbixApi();
try {
$zbx->login('https://my.zabbixurl.com/zabbix', 'myusername', 'mypassword');
$result = $zbx->call('host.get', array("countOutput" => true));
print "Number of hosts:$result\n";
} catch (Exception $e) {
print "==== Exception ===\n";
print 'Errorcode: '.$e->getCode()."\n";
print 'ErrorMessage: '.$e->getMessage()."\n";
exit;
}
use IntelliTrend\Zabbix\ZabbixApi;
$zbx = new ZabbixApi();
try {
$zbx->loginToken('https://my.zabbixurl.com/zabbix', '123456789abcdef123456789abcdef123456789abcdef123456789abcdef1234');
$result = $zbx->call('host.get', array("countOutput" => true));
print "Number of hosts:$result\n";
} catch (Exception $e) {
print "==== Exception ===\n";
print 'Errorcode: '.$e->getCode()."\n";
print 'ErrorMessage: '.$e->getMessage()."\n";
exit;
}
use IntelliTrend\Zabbix\ZabbixApi;
$zbx = new ZabbixApi();
$zabUrl = 'https://my.zabbixurl.com/zabbix';
$zabUser = 'myusername';
$zabPassword = 'mypassword';
try {
$zbx->login($zabUrl, $zabUser, $zabPassword);
$result = $zbx->call('hostgroup.get', array("output" => 'extend'));
foreach ($result as $hostGroup) {
$hostGroupId = $hostGroup['groupid'];
$hostGroupName = $hostGroup['name'];
print "groupid:$hostGroupId, hostGroupName:$hostGroupName\n";
}
} catch (Exception $e) {
print "==== Exception ===\n";
print 'Errorcode: '.$e->getCode()."\n";
print 'ErrorMessage: '.$e->getMessage()."\n";
exit;
}
use IntelliTrend\Zabbix\ZabbixApi;
$zbx = new ZabbixApi();
$options = array('sslVerifyPeer' => false, 'sslVerifyHost' => false);
try {
$zbx->login('https://my.zabbixurl.com/zabbix', 'myusername', 'mypassword', $options);
$result = $zbx->call('host.get', array("countOutput" => true));
print "Number of hosts:$result\n";
} catch (Exception $e) {
print "==== Exception ===\n";
print 'Errorcode: '.$e->getCode()."\n";
print 'ErrorMessage: '.$e->getMessage()."\n";
exit;
}
use IntelliTrend\Zabbix\ZabbixApi;
$zbx = new ZabbixApi();
try {
// default is to verify certificate and hostname
$options = array('sslVerifyPeer' => false, 'sslVerifyHost' => false);
$zbx->login('https://my.zabbixurl.com/zabbix', 'myusername', 'mypassword', $options);
print "====================================================================\n";
// Get hosts and other information available to this useraccount, but filtered and limited
$limit = 5;
$params = array(
'output' => array('hostid', 'host', 'name', 'status', 'maintenance_status', 'description'),
'filter' => array('status' => 0, 'maintenance_status' => 0, 'type' => 1),
'selectGroups' => array('groupid', 'name'),
'selectInterfaces' => array('interfaceid', 'main', 'type', 'useip', 'ip', 'dns', 'port'),
'selectInventory' => array('os', 'contact', 'location'),
'selectMacros' => array('macro', 'value'),
'limit' => $limit
);
$result = $zbx->call('host.get',$params);
print "==== Filtered hostlist with groups and macros ====\n";
foreach($result as $host) {
printf("HostId:%d - Host:%s\n", $host['hostid'], $host['host']);
foreach($host['groups'] as $group) {
printf(" - GroupId:%d - Group:%s\n", $group['groupid'], $group['name']);
}
foreach($host['macros'] as $macro) {
printf(" - Macro:%s - Value:%s\n", $macro['macro'], $macro['value']);
}
}
} catch (Exception $e) {
print "==== Exception ===\n";
print 'Errorcode: '.$e->getCode()."\n";
print 'ErrorMessage: '.$e->getMessage()."\n";
exit;
}
$zbx = new ZabbixApi();
try {
$options = array('sslVerifyPeer' => false, 'sslVerifyHost' => false, 'debug' => true);
$zbx->login('https://my.zabbixurl.com/zabbix', 'myusername', 'mypassword', $options);
...
# Turn debug on
$zbx = new ZabbixApi();
$zbx->setDebug(true);
try {
$options = array('sslVerifyPeer' => false, 'sslVerifyHost' => false);
$zbx->login('https://my.zabbixurl.com/zabbix', 'myusername', 'mypassword', $options);
...
# Can be turned off anytime
$zbx->setDebug(false);
...
# And turned on again
$zbx->setDebug(true);