Определяем нагрузку на сервер Apache

Владимир | | PHP, Web разработка.

apache mod status

В этой статье я расскажу о том, как получить данные о работе web сервера Apache и представить их в удобном для анализа виде.

Начнем с получения данных.

Для того этого, необходимо подключить модуль mod_status. Он отслеживает работу сервера и показывает данные в виде обычной html страницы. С его помощью можно узнать:

1) количество процессов, выполняющих обработку запросов;

2) количество процессов, которые находятся в состоянии ожидания;

3) состояние каждого процесса, число обработанных им запросов и переданных данных;

4) общее количество запросов и переданных данных;

5) время работы сервера (запуск, перезапуск и общее время работы (uptime));

6) общая статистика: среднее число запросов в сек, байт на запрос, байт в сек;

7) использование CPU каждым процессом отдельно и apache’ем в целом в данный момент;

8 ) хосты и их запросы, которые обрабатываются в данный момент.

Переходим к настройке

1) Подключаем модуль.
Для этого в файле httpd.conf снимаем комментарий со строки
LoadModule status_module modules/mod_status.so

2) И открываем доступ к статистике. Добавляем в httpd.conf следующие строки

# включаем расширенную статиститку
ExtendedStatus On

<Location /server-status> SetHandler server-status Order Deny,Allow Deny from all Allow from 127.0.0.1 </Location>

Примечание. Здесь мы разрешили доступ к статистике только для адреса 127.0.0.1 (localhost). Для тестирования удаленного сервера вам нужно будет эту настройку изменить.

3) Перезапускаем apache.

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

Для этого вводим в браузере URL

http://localhost/server-status

или, если вы хотите, чтобы страница обновлялась автоматически

http://localhost/server-status?refresh=15

(вместо цифры 15 ставите задержку в секундах).

Есть ещё один вариант страницы с этими же данными:

http://localhost/server-status?auto&refresh=3

Как видите, данные мы получили, но анализировать их, глядя на стандартную страницу не очень удобно.

Например, на скриншоте показано состояние процессов apache.

workers

Символ подчеркивания означает, что процесс ожидает соединения, буква «W» — отправка ответа, точка – открытый слот без процесса.

Примечание. Скриншот сделан для локального севера, поэтому единственный процесс, который выполняет отправку запроса – это тот, который формирует страницу со статистикой.

Кроме того, если у вас данные постоянно обновляются (используется параметр refresh), то визуально оценить изменения будет очень сложно.

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

Можно написать такой его самостоятельно, но проще использовать готовый.

В качестве примера такого скрипта рассмотрим Visualize Apache Server Status (распространяется под LGPL лицензией).

Скрипт состоит из 3-х частей.

1) Конфигурационный файл (inc.config.php). Тут нужно указать адрес страницы со статистикой:

$statusurl = "http://localhost/server-status";

Время обновления данных и масштаб (используется для построения графика).

$refreshtime = 2;
$scalefaktor = 1;

2) Два скрипта (serverstatus.php и serverstatus2.php). Используются для отображения данных. Запускать можно любой из них. Информация одна и та же, только представлена по-разному.

serverstatus.php

visualize apache 1 thumb

serverstatus2.php

visualize apache 2 thumb

3) Класс, выполняющий анализ страницы со статистикой (class.parse_server_status.php). Самый интересный компонент ;) . Его можно использовать в собственных скриптах.

При работе вам будут нужны 2 метода этого класса.

1) parse_server_status($url) – в параметре $url задаем адрес страницы со статистикой.

2) getActiveConnections() – возвращает массив с информацией об активных соединениях. На данный момент этот массив содержит: идентификатор процесса, режим работы, время работы процесса, использование CPU, имя виртуального хоста и URI запроса.

Таким образом, несложно написать собственный скрипт, который будет сохранять данные о работе сервера.

Удачи!

  • http://www.kurilca.ru/ Серж

    Спасибо за информацию, может оказаться крайне полезной.

  • http://www.kurilca.ru/ Серж

    Спасибо за информацию, может оказаться крайне полезной.

  • http://www.credit.autoprobeg.ru/ safer

    Спасибо за информацию, теперь написание скрипта мне не кажется таким сложным.

  • http://www.credit.autoprobeg.ru/ safer

    Спасибо за информацию, теперь написание скрипта мне не кажется таким сложным.

  • http://www.magic-sky.ru/ Magic-sky

    А мне честно говоря, всё-таки хотелось понять, что такое Апач и с чем его едят, но в итоге получилось только ещё больше загрузиться…

    • http://www.simplecoding.org/ Владимир

      Апач — это веб сервер. Получает на вход адреса (URL), обрабатывает их, если нужно может запустить PHP (или другой скприпт), и отправляет результат браузеру.
      Это если кратко.
      А вообще советую установить и поиграться, многие вещи станут сразу понятнее :-)

  • http://www.magic-sky.ru Magic-sky

    А мне честно говоря, всё-таки хотелось понять, что такое Апач и с чем его едят, но в итоге получилось только ещё больше загрузиться…

    • http://www.simplecoding.org/ Владимир

      Апач — это веб сервер. Получает на вход адреса (URL), обрабатывает их, если нужно может запустить PHP (или другой скприпт), и отправляет результат браузеру.
      Это если кратко.
      А вообще советую установить и поиграться, многие вещи станут сразу понятнее :-)

  • http://www.magic-sky.ru/ Magic-sky

    Спасибо, стало немного понятней. Всё-таки, когда есть определение термину, тогда и предмет становится реальней для восприятия :-)

  • http://www.magic-sky.ru Magic-sky

    Спасибо, стало немного понятней. Всё-таки, когда есть определение термину, тогда и предмет становится реальней для восприятия :-)

  • http://megablog.biz/ Grabus

    спасибо большое, но у меня почему-то не пашет…
    пишет
    Warning: Invalid argument supplied for foreach() in /home/*******/serverstatus.php on line 141

    можешь подсказать что не так?
    на сколько я понял, массив $_SESSION["HostCountChart"] пустой. но как это исправить я без понятия…
    хелп!

  • http://megablog.biz Grabus

    спасибо большое, но у меня почему-то не пашет…
    пишет
    Warning: Invalid argument supplied for foreach() in /home/*******/serverstatus.php on line 141

    можешь подсказать что не так?
    на сколько я понял, массив $_SESSION["HostCountChart"] пустой. но как это исправить я без понятия…
    хелп!

  • http://megablog.biz/ Grabus

    блин, потратил несколько часов, чтоб увидеть что этот класс вырезает по тем тегам, которых нет у меня в html-коде в server-status…

    • http://www.simplecoding.org/ Владимир

      Я так понял вопрос снят? :-)

      • http://megablog.biz/ Grabus

        честно говоря нет. точнее да.
        вопрос другой, как заставить эту штуку работать?
        может сервер-статус как-то изменить, или что?
        поможешь?

        • http://www.simplecoding.org/ Владимир

          А что именно не работает. Mod_status?
          Прежде всего нужно проверить подключен он или нет. Для этого просто копируете настройки в httpd.conf.
          И заходите на страницу
          http://localhost/server-status
          Если не видите ничего похожего на первый скриншот, значит, Mod_status не запущен. Нужно проверять конфиг и смотреть лог загрузки апача. Не забывайте перезапускать сервер после каждого изменения настроек.
          В общем, чтобы сказать что-то конкретнее нужна дополнительная информация.

  • http://megablog.biz Grabus

    блин, потратил несколько часов, чтоб увидеть что этот класс вырезает по тем тегам, которых нет у меня в html-коде в server-status…

    • http://www.simplecoding.org/ Владимир

      Я так понял вопрос снят? :-)

      • http://megablog.biz Grabus

        честно говоря нет. точнее да.
        вопрос другой, как заставить эту штуку работать?
        может сервер-статус как-то изменить, или что?
        поможешь?

        • http://www.simplecoding.org/ Владимир

          А что именно не работает. Mod_status?
          Прежде всего нужно проверить подключен он или нет. Для этого просто копируете настройки в httpd.conf.
          И заходите на страницу
          http://localhost/server-status
          Если не видите ничего похожего на первый скриншот, значит, Mod_status не запущен. Нужно проверять конфиг и смотреть лог загрузки апача. Не забывайте перезапускать сервер после каждого изменения настроек.
          В общем, чтобы сказать что-то конкретнее нужна дополнительная информация.

  • http://www.vsefaily.ru/ Оксана

    здорово все выложено и главное что доступно

  • http://www.vsefaily.ru/ Оксана

    здорово все выложено и главное что доступно

  • Алексей

    Какой смысл использовать для таких задач php? Есть же perl, к тому же есть apachetop, который с логами работает и анализирует запросы, ну а если access логи отключены, то ясное дело, что нагрузка большая, обычными средствами тут не поможешь, все равно лучше выучить наконец top/ps и т.п. команды, чтобы хоть чуток понимать что происходит на сервере :)

    • http://www.simplecoding.org/ Владимир

      Я согласен, варианты вроде ApacheTop удобнее.
      Но этот скрипт используется только для визуализации данных, которые собирает mod_status. Поэтому, на мой взгляд, не играет большой роли на каком языке написан скрипт.

      • Алексей

        Ну да, в общем-то холивар.
        Я вообще люблю попрофилировать, пооптимизировать :)

  • Алексей

    Какой смысл использовать для таких задач php? Есть же perl, к тому же есть apachetop, который с логами работает и анализирует запросы, ну а если access логи отключены, то ясное дело, что нагрузка большая, обычными средствами тут не поможешь, все равно лучше выучить наконец top/ps и т.п. команды, чтобы хоть чуток понимать что происходит на сервере :)

    • http://www.simplecoding.org/ Владимир

      Я согласен, варианты вроде ApacheTop удобнее.
      Но этот скрипт используется только для визуализации данных, которые собирает mod_status. Поэтому, на мой взгляд, не играет большой роли на каком языке написан скрипт.

      • Алексей

        Ну да, в общем-то холивар.
        Я вообще люблю попрофилировать, пооптимизировать :)

  • rom

    ну что-то не хочет работать гад. на запрос любого УРЛ, хоть server-status, хоть serverstatus2.php, хоть serverstatus.php, выдается одна и таже картинка. как на 1м скриншоте =(

    • http://www.simplecoding.org/ Владимир

      Нужно проверить, работают скрипты или нет. Временно уберите их и попробуйте зайти на serverstatus2.php и serverstatus.php. Вы должны увидеть 404 ошибку.
      Напишите, что получилось.

      • rom

        хм. действительно. что-то я и не подумал что так протестить можно. в общем кажется не работают. выдается все та же картинка (результат работы модуля) вместо 404-й странички.
        еще момент. пытаюсь настроить это дело на хостинге, а не у себя. так что httpd.conf естественно не доступен. поэтому через .htaccess настраиваю. он лежит в том же каталоге и содержит одну строку «SetHandler server-status».
        может в этом проблема?

        • http://www.simplecoding.org/ Владимир

          Если вы видите результат работы модуля, значит где-то указано.
          SetHandler serverstatus.php
          SetHandler serverstatus2.php
          Или что-нибудь в этом духе. Т.е. у вас запросы к этим скриптам перенаправляются на страницу модуля.

          А вам нужно чтобы запрос передавался скрипту serverstatus.php, а он отправляет запрос на server-status, получает данные и показывает их вам.

          В общем, попробуйте переименовать скрипт, например, serverstatus.php в myscript.php, а в его настройках укажите
          $statusurl = «http://sitename/serverstatus»;

          Ну и конечно стоит проверить скрипты на localhost'е.

        • rom

          нде. провайдер сказал чтоб пошли покурили… =(

  • rom

    ну что-то не хочет работать гад. на запрос любого УРЛ, хоть server-status, хоть serverstatus2.php, хоть serverstatus.php, выдается одна и таже картинка. как на 1м скриншоте =(

    • http://www.simplecoding.org/ Владимир

      Нужно проверить, работают скрипты или нет. Временно уберите их и попробуйте зайти на serverstatus2.php и serverstatus.php. Вы должны увидеть 404 ошибку.
      Напишите, что получилось.

      • rom

        хм. действительно. что-то я и не подумал что так протестить можно. в общем кажется не работают. выдается все та же картинка (результат работы модуля) вместо 404-й странички.
        еще момент. пытаюсь настроить это дело на хостинге, а не у себя. так что httpd.conf естественно не доступен. поэтому через .htaccess настраиваю. он лежит в том же каталоге и содержит одну строку «SetHandler server-status».
        может в этом проблема?

        • http://www.simplecoding.org/ Владимир

          Если вы видите результат работы модуля, значит где-то указано.
          SetHandler serverstatus.php
          SetHandler serverstatus2.php
          Или что-нибудь в этом духе. Т.е. у вас запросы к этим скриптам перенаправляются на страницу модуля.

          А вам нужно чтобы запрос передавался скрипту serverstatus.php, а он отправляет запрос на server-status, получает данные и показывает их вам.

          В общем, попробуйте переименовать скрипт, например, serverstatus.php в myscript.php, а в его настройках укажите
          $statusurl = «http://sitename/serverstatus»;

          Ну и конечно стоит проверить скрипты на localhost'е.

        • rom

          нде. провайдер сказал чтоб пошли покурили… =(

  • http://slus.name/ Виталий

    Интересно, спасибо, попробую :)

  • http://slus.name Виталий

    Интересно, спасибо, попробую :)

  • Андрей

    А я вообще считаю обязательной установку сервер-статуса)) уже сделал первую часть, сейчас буду подключать скрипт для отображения графиков. У нас на хостинге около 30 сайтов. Надеюсь теперь узнаю что же жрет память)) Статья на 5+

  • Андрей

    А я вообще считаю обязательной установку сервер-статуса)) уже сделал первую часть, сейчас буду подключать скрипт для отображения графиков. У нас на хостинге около 30 сайтов. Надеюсь теперь узнаю что же жрет память)) Статья на 5+

  • Андрей

    вот что при переносе на сервер :

    PHP Warning: file(http://xxxx/server-status?dat=1245674519) [function.file]: failed to open stream: Connection timed out in …/www/class.parse_server_status.php on line 24

    что-то с правами?

  • Андрей

    вот что при переносе на сервер :

    PHP Warning: file(http://xxxx/server-status?dat=1245674519) [function.file]: failed to open stream: Connection timed out in …/www/class.parse_server_status.php on line 24

    что-то с правами?

  • Андрей

    извиняюсь теги не поставил:

    PHP Warning: file(http://xxxx/server-status?dat=1245674519) [function.file]: failed to open stream: Connection timed out in .../www/class.parse_server_status.php on line 24

    что-то с правами?))

    • http://www.simplecoding.org/ Владимир

      Судя по описанию ошибки либо нет доступа к файлу, либо такого файла вообще нет (тут, правда, не файл, а URL).
      Попробуйте из браузера зайти на http://xxxx/server-status
      Если увидите страницу похожую на первый скриншот в этой статье — проверяйте настройки в inc.config.php, если не увидите — смотрите настройки mod_status.

  • Андрей

    извиняюсь теги не поставил:

    PHP Warning: file(http://xxxx/server-status?dat=1245674519) [function.file]: failed to open stream: Connection timed out in .../www/class.parse_server_status.php on line 24

    что-то с правами?))

    • http://www.simplecoding.org/ Владимир

      Судя по описанию ошибки либо нет доступа к файлу, либо такого файла вообще нет (тут, правда, не файл, а URL).
      Попробуйте из браузера зайти на http://xxxx/server-status
      Если увидите страницу похожую на первый скриншот в этой статье — проверяйте настройки в inc.config.php, если не увидите — смотрите настройки mod_status.

  • Alex

    прошу прошение а для Денвер 3 те-же настройки что вы указали …
    что то ни чего не выходит не может отобразить страницу

    http://localhost/server-status

    а в денвере2 пишет

    Вы ошиблись при наборе URL в браузере. Вероятнее всего, сервер пытается найти файл z:/home/localhost/www/server-status, которого не существует.

    • http://www.simplecoding.org/ Владимир

      Работа mod_status — это встроенная возможность сервера apache. И она должна работать если вы ее включили (загрузили модуль и открыли к нему доступ).
      Т.к. денвером я не пользуюсь, проверить не могу, но очень похоже, что вы не открыли доступ к статистике.

  • Alex

    прошу прошение а для Денвер 3 те-же настройки что вы указали …
    что то ни чего не выходит не может отобразить страницу

    http://localhost/server-status

    а в денвере2 пишет

    Вы ошиблись при наборе URL в браузере. Вероятнее всего, сервер пытается найти файл z:/home/localhost/www/server-status, которого не существует.

    • http://www.simplecoding.org/ Владимир

      Работа mod_status — это встроенная возможность сервера apache. И она должна работать если вы ее включили (загрузили модуль и открыли к нему доступ).
      Т.к. денвером я не пользуюсь, проверить не могу, но очень похоже, что вы не открыли доступ к статистике.

  • Alex

    пытаюсь разобраться но из-за не опытности всё в пустую

    мои действия….
    открыл…. /…./ httpd.conf

    раскоментировал … по схеме, вот что вышло

    #LoadModule speling_module modules/mod_speling.so

    LoadModule status_module modules/mod_status.so

    ExtendedStatus On

    SetHandler server-status
    Order deny,allow
    Deny from all
    Allow from 127.0.0.1

    #LoadModule unique_id_module modules/mod_unique_id.so
    LoadModule userdir_module modules/mod_userdir.so
    #LoadModule usertrack_module modules/mod_usertrack.so

    Перезапустил apache
    все что раньше открывалось http://localhost/….. не открывается
    ну и http://localhost/server-status тоже
    подскажите что ни так спасибо!

  • Alex

    пытаюсь разобраться но из-за не опытности всё в пустую

    мои действия….
    открыл…. /…./ httpd.conf

    раскоментировал … по схеме, вот что вышло

    #LoadModule speling_module modules/mod_speling.so

    LoadModule status_module modules/mod_status.so

    ExtendedStatus On

    SetHandler server-status
    Order deny,allow
    Deny from all
    Allow from 127.0.0.1

    #LoadModule unique_id_module modules/mod_unique_id.so
    LoadModule userdir_module modules/mod_userdir.so
    #LoadModule usertrack_module modules/mod_usertrack.so

    Перезапустил apache
    все что раньше открывалось http://localhost/….. не открывается
    ну и http://localhost/server-status тоже
    подскажите что ни так спасибо!

  • Alex


    Location /server-status не прошел в месте с коментом… но он есть……

    • http://www.simplecoding.org/ Владимир

      Т.е. вы не можете вообще ни одну страницу открыть? Какие сообщения об ошибках? Apache вообще запустился?

      Посмотрите лог файл (в httpd.conf есть параметр ErrorLog в котором указано размещение этого файла).

      Посмотрите какие в httpd.conf есть блоки Location или Directory и в них запреты на доступ (deny,allow). Может случайно закрыли доступ.

  • Alex


    Location /server-status не прошел в месте с коментом… но он есть……

    • http://www.simplecoding.org/ Владимир

      Т.е. вы не можете вообще ни одну страницу открыть? Какие сообщения об ошибках? Apache вообще запустился?

      Посмотрите лог файл (в httpd.conf есть параметр ErrorLog в котором указано размещение этого файла).

      Посмотрите какие в httpd.conf есть блоки Location или Directory и в них запреты на доступ (deny,allow). Может случайно закрыли доступ.

  • Alex

    да сразу после перезапуска сервера ни открывается ни одна страница ошибку не пишет просто ….. IE не может отобразить эту веб-страницу
    так-же исчез файл ErrorLog

    блоки Location и Directory существуют и рас-комментированы

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

    http://www.denwer.ru/

    и просто дать оценку стоит им пользоватса начинающим
    или изначально настраивать самому…

    • http://www.simplecoding.org/ Владимир

      Честно говоря денвер мне не нравится. Настраивать всю связку самому — это вариант. Требует времени, конечно, но опыт получите ;)
      Я использую Wampserver, с ним практически никаких проблем не было.
      В любом случае денвер сам по себе не влияет на работу apache. Он только устанавливает свой набор параметров в httpd.conf.
      Попробуйте пошагово отменить все изменения, которые вы сделали и посмотрите когда система снова заработает.
      После этого можно будет разбираться с конкретным параметром.

  • Alex

    да сразу после перезапуска сервера ни открывается ни одна страница ошибку не пишет просто ….. IE не может отобразить эту веб-страницу
    так-же исчез файл ErrorLog

    блоки Location и Directory существуют и рас-комментированы

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

    http://www.denwer.ru/

    и просто дать оценку стоит им пользоватса начинающим
    или изначально настраивать самому…

    • http://www.simplecoding.org/ Владимир

      Честно говоря денвер мне не нравится. Настраивать всю связку самому — это вариант. Требует времени, конечно, но опыт получите ;)
      Я использую Wampserver, с ним практически никаких проблем не было.
      В любом случае денвер сам по себе не влияет на работу apache. Он только устанавливает свой набор параметров в httpd.conf.
      Попробуйте пошагово отменить все изменения, которые вы сделали и посмотрите когда система снова заработает.
      После этого можно будет разбираться с конкретным параметром.

  • Alex

    сервер тухнет сразу :)
    т.е раскомментировал (даже ни чего не добавляя)
    перезагружаю пробую зайти на localhost и тишина…. )))
    спасибо денвер в корзину….

    • Игорь

      В базовую версию денвера не входит mod_status, необходимо установить версию с расширенной версией апача

  • Alex

    сервер тухнет сразу :)
    т.е раскомментировал (даже ни чего не добавляя)
    перезагружаю пробую зайти на localhost и тишина…. )))
    спасибо денвер в корзину….

    • Игорь

      В базовую версию денвера не входит mod_status, необходимо установить версию с расширенной версией апача

  • Alex

    установил расширения все работает, спасибо всем!

  • Alex

    установил расширения все работает, спасибо всем!

  • Alex

    сори вновь нужен хелп

    я просмотрел пару страниц http://сайт/server-status

    и у всех выдаёт значение этих данных

    Srv PID Acc M CPU SS Req Conn Child Slot Client VHost Request

    а у меня как раз(то что мне было интересно) в статистике CPU и нету
    подскажите как мне его туда привинтить ? :)
    и еще как это прочитать правильно
    CPU Usage: u424.7 s8.33 cu.01 cs0 - .847% CPU load

    и вет эти две строки с разных сайтов … но прям очень отличаютса

    1. 271 requests currently being processed, 113 idle workers
    2. 1 requests currently being processed, 9 idle workers

    • http://www.simplecoding.org/ Владимир

      Нужно использовать директиву
      ExtendedStatus On
      (я в примере ее привел, но похожу у вас она отключена).

      CPU Usage
      Есть довольно подробная статья
      http://informatic.org.ua/forum/30-879-1

      • Жека

        тоже самое, что и у alex — нет CPU на странице статистики, ни в таблице, ни в сводной информации, при этом ExtendedStatus On однозначно, если её офнуть то даже по памяти нет статистики…Уже всё облазил, нигде нет решения((( 

  • Alex

    сори вновь нужен хелп

    я просмотрел пару страниц http://сайт/server-status

    и у всех выдаёт значение этих данных

    Srv PID Acc M CPU SS Req Conn Child Slot Client VHost Request

    а у меня как раз(то что мне было интересно) в статистике CPU и нету
    подскажите как мне его туда привинтить ? :)
    и еще как это прочитать правильно
    CPU Usage: u424.7 s8.33 cu.01 cs0 - .847% CPU load

    и вет эти две строки с разных сайтов … но прям очень отличаютса

    1. 271 requests currently being processed, 113 idle workers
    2. 1 requests currently being processed, 9 idle workers

    • http://www.simplecoding.org/ Владимир

      Нужно использовать директиву
      ExtendedStatus On
      (я в примере ее привел, но похожу у вас она отключена).

      CPU Usage
      Есть довольно подробная статья
      http://informatic.org.ua/forum/30-879-1

  • Alex

    Спасибо за статью
    кстати в ней было написано изменить ExtendedStatus Off на ExtendedStatus On
    у меня там только один ExtendedStatus On который я скопировал с вашего сайта (вместе с остальными строками)
    до этого его там небыло…

  • Alex

    Спасибо за статью
    кстати в ней было написано изменить ExtendedStatus Off на ExtendedStatus On
    у меня там только один ExtendedStatus On который я скопировал с вашего сайта (вместе с остальными строками)
    до этого его там небыло…

  • Gostemilov

    Спасибо за статью.Установил.
    _http://мой_сайт.ru/server-status — все работает, достаточно удобно с параметром refresh. Тут все ОК

    Visualize Apache Server Status — залитый с конфигом по умолчанию — прекрасно показывает статистику apache.org, но она мне не нужна. При изменении $statusurl на мой URL (как с WWW так и без) на serverstatus.php статистика не выдается вообще, на sercerstatus2.php продолжает выдаваться статистика apache.org

    Долго искал, но так и не нашел, в чем тут закавыка. Что можно сделать для корректной работы скрипта?

    Заранее спасибо.

    • http://www.simplecoding.org/ Владимир

      Попробуйте в отладчике посмотреть как работают скрипты. Нужно узнать значение переменной $statusurl. Если отладчика нет, можно просто внутри скрипта записать эту переменную в какой-то файл.

  • Gostemilov

    Спасибо за статью.Установил.
    _http://мой_сайт.ru/server-status — все работает, достаточно удобно с параметром refresh. Тут все ОК

    Visualize Apache Server Status — залитый с конфигом по умолчанию — прекрасно показывает статистику apache.org, но она мне не нужна. При изменении $statusurl на мой URL (как с WWW так и без) на serverstatus.php статистика не выдается вообще, на sercerstatus2.php продолжает выдаваться статистика apache.org

    Долго искал, но так и не нашел, в чем тут закавыка. Что можно сделать для корректной работы скрипта?

    Заранее спасибо.

    • http://www.simplecoding.org/ Владимир

      Попробуйте в отладчике посмотреть как работают скрипты. Нужно узнать значение переменной $statusurl. Если отладчика нет, можно просто внутри скрипта записать эту переменную в какой-то файл.

  • shinaz

    Доброго время суток… Сделал все как описано выше…но вывод статистики не корректный — если на скрине в каждый отдельный прямоугольник выводится статистика по отдельному домену или поддомену, то у меня выводится с них статистика по каждому отдельному запросу

    • http://www.simplecoding.org/ Владимир

      Я не совсем понял, статистика собирается по каждому отдельному запросу. Она просто при выводе группируется по доменам.
      Можете дать ссылку на ваш скриншот?

  • shinaz

    Доброго время суток… Сделал все как описано выше…но вывод статистики не корректный — если на скрине в каждый отдельный прямоугольник выводится статистика по отдельному домену или поддомену, то у меня выводится с них статистика по каждому отдельному запросу

    • http://www.simplecoding.org/ Владимир

      Я не совсем понял, статистика собирается по каждому отдельному запросу. Она просто при выводе группируется по доменам.
      Можете дать ссылку на ваш скриншот?

  • cvat

    Warning: Invalid argument supplied for foreach() in /home/*******/serverstatus.php on line 141

    насчёт этого:
    allow_url_fopen should be ON in PHP configuration (php.ini)

    • http://www.simplecoding.org/ Владимир

      Большое спасибо за этот пример! Вполне может кому-нибудь пригодиться.

  • cvat

    Warning: Invalid argument supplied for foreach() in /home/*******/serverstatus.php on line 141

    насчёт этого:
    allow_url_fopen should be ON in PHP configuration (php.ini)

    • http://www.simplecoding.org/ Владимир

      Большое спасибо за этот пример! Вполне может кому-нибудь пригодиться.

  • http://www.alfa-grup.com Adm

    Куда класть serverstatus.php и serverstatus2.php ? Сервер-статус работает, а вот веб-морды пока нет)

    • http://www.simplecoding.org Владимир

      Не принципиально. Главное, чтобы вы могли получить к ним доступ из браузера. И, естественно, нужно правильно установить $statusurl

  • http://kolbin.ru/ Дмитрий Колбин — Ваш Ведущий!

    спасибо!)

  • Makedon_lev

    Spasibo, otli4nyi instrument dlia monitoringa, to 4to nado

  • Akc

    Спасибо!
    Все заработало.

  • http://avz.org.ua/ sysadmin

    А есть что-то подобное для визуализации server-status для cacti (может шаблон какой-то или плагин)?

  • Vov41k

    а как подключить Visualize Apache Server Status. Нужная статистика по входам на сайт и нагрузку отдельных доменов, где можно такое найти?

    • http://www.simplecoding.org Владимир

      Я не совсем понял вопрос. Подключение Visualize Apache Server Status описано в статье (serverstatus.php), а статистику по входам и количество запросов по отдельным доменам можно получить с помощью любой систем вроде awstats или google analytics.