Категории

Примеры кода

Мониторинг времени выполнения PHP-скриптов в Zabbix

<h1>Мониторинг времени выполнения PHP-скриптов в Zabbix</h1>

Изображение

Требования

Решение

1. Создаем PHP-скрипт для замера времени

Создаем файл measure_time.php:


<?php
$start = microtime(true);

// Тестовая нагрузка - можно адаптировать под свои нужды
for ($i = 0; $i < 1000000; $i++) {
    $a += sqrt($i);
}

$elapsed = microtime(true) - $start;
echo round($elapsed, 4);
?>

2. Создаем bash-скрипт для Zabbix Agent

Создаем файл check_php_time.sh:

#!/bin/bash
PHP_SCRIPT="/path/to/measure_time.php"
PHP_BIN="/usr/bin/php"

result=$($PHP_BIN "$PHP_SCRIPT" 2>/dev/null)

if [[ $? -eq 0 && "$result" =~ ^[0-9]+(\.[0-9]+)?$ ]]; then
    echo "$result"
else
    echo "0"
    exit 1
fi

3. Настраиваем Zabbix Agent

Добавляем в /etc/zabbix/zabbix_agentd.conf:

UserParameter=php.time,/path/to/check_php_time.sh

Не забудьте перезапустить агент:

sudo systemctl restart zabbix-agent

Комментарии

Пока нет комментариев. Будьте первым!

Оставить комментарий

← Назад к списку