Задать вопрос

Как осуществить вывод графиков / экранов Zabbix на отдельной страничке?

Имеется Zabbix 2.2

Необходимо регулярно вытаскивать из него отдельные графики / карты сети и размещать на html страничке со своим форматированием.

Фактически, как я понимаю, это может быть некий скрипт (желательно на php), запускающийся в cron-е, который будет в папку сохранять нужные картинки, генерируемые Zabbix-ом.

Какие рабочие решения существуют?
  • Вопрос задан
  • 8448 просмотров
Подписаться 3 Оценить Комментировать
Решения вопроса 1
@KGBelyaev Автор вопроса
Сам спросил, сам отвечу - конечно можно!

Я взял более сложный пример - habrahabr.ru/post/104460
Затем он был обрезан / модифицирован до нужного функционала.
Получилось следующее решение: в Zabbix-е был создан пользователь гость, с разрешениями на просмотр нужных графиков / карт сетей.
Затем, пройдясь по этим самым графикам были получены прямые ссылки на генерируемые картинки (просто в теле выдаваемой Zabbix-ом html страницы).
Т.о. была получена коллекция ссылок вида: http://адрес_сервера/zabbix/chart2.php... , где graphid - номер графика, width - ширина генерируемой картинки.

Все эти ссылки были загнаны в скрипт, который, в свою очередь загнан в cron для регулярного обновления этих картинок.

Теперь можно нарисовать страничку и вставить в нее ссылки на получаемые картинки.

Собственно скрипт:
<?php

// Папка для хранения изображений
define('TMP_PATH', '/var/web/zabbix_images/');

$resources = array();

//Графики
$resources[] = array('url' => 'http://адрес_сервера/zabbix/chart2.php?graphid=534&width=1000');
$resources[] = array('url' => 'http://адрес_сервера/zabbix/chart2.php?graphid=524&width=800');
//Карта сети
$resources[] = array('url' => 'http://адрес_сервера/zabbix/map.php?sysmapid=1');

//Получаем изображения
foreach($resources as $k => $res)
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $res['url']);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

$file = curl_exec($ch);
if($file) file_put_contents(TMP_PATH . 'img' . $k . '.png', $file);
curl_close($ch);
}
?>
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
opium
@opium
Просто люблю качественно работать
никакие в заббиксе для этого есть скрины.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы