a1s/php-zabbix-agent

There is no license information available for the latest version (dev-master) of this package.

Zabbix Agent implemented in PHP for long living php-servers

dev-master 2020-04-15 17:49 UTC

This package is not auto-updated.

Last update: 2024-04-19 20:04:24 UTC


README

Zabbix Agent implemented in PHP for long living php-servers

1. Create composer.json file

{
   "require" : {
        "a1s/php-zabbix-agent" : "dev-master"
   },
   "minimum-stability": "dev",
   "prefer-stable": true,
   "repositories": [
        {
            "url": "https://github.com/wizardjedi/php-zabbix-agent.git",
            "type": "git"
        }
   ]
}

2. Update composer deps

$ composer update

3. Add autoload.php to your app

include("vendor/autoload.php");

4. Simple script

<?php

include("vendor/autoload.php");

$agent = ZabbixAgent::create(10051);

$agent->start();

$agent->setItem("some.key", ZabbixTimeDuration::now());

while (true) {
    echo "Usefull payload\n";

    $agent->tick();

    usleep(500000);
}

5. Main classes

  • ZabbixPrimitiveItem - holds primitive values like int, string, float. Return var_export()'ed string for object or array
  • ZabbixTimeDuration - holds duration from moment in past to current time.
    • Use acceptIfNewer($timeValue) to move moment near in past
  • ZabbixAvgRate - calculats rate of processing
    • Use acquire($count) method to inform item of processed objects count.

6. CI project page

Checkout project build status on: https://travis-ci.org/wizardjedi/php-zabbix-agent