Назад | Перейти на главную страницу

Webalizer вызывает высокую загрузку процессора

Мы используем Webalizer для создания отчетов по нашим журналам доступа Apache - это полезно в сочетании с Google Analytics.

Проблема в том, что webalizer использует БОЛЬШЕ ЦП при работе. Если я сбегу top Я вижу два процесса Perl с 90% ЦП - это замедляет работу машины и, следовательно, веб-сайта для наших пользователей.

Webalizer запускается через ежедневное задание cron (/etc/cron.daily/00webalizer):

#! /bin/bash
# update access statistics for the web site
if [ -s /var/log/httpd/access_log ]; then
   exec /usr/bin/webalizer -Q
fi

Кто-нибудь знает, как ограничить, сколько CPU webalizer может использовать? Например, будет nice помощь и как мне ее использовать?

Да, неплохо, это поможет, это снизит приоритет процесса, чтобы ваш веб-сервер и, следовательно, пользователи получили приоритет.

exec nice /usr/bin/webalizer -Q 

Понаблюдав некоторое время за ситуацией, я делаю смущающее признание: Webalizer не вызывал скачка нагрузки на нашем сервере. На самом деле это было вызвано журнал, другой анализатор лог-файлов. Оба сценария работали одновременно (через cron.daily), и я только выяснил, какой из них вызывает проблему, отключив один, затем другой и сравнив использование ЦП.

Нам не нужен журнал, потому что я даже не видел электронных писем, которые он создает. Итак, я отключил его, удалив символическую ссылку в /etc/cron.daily/:

> ls -l /etc/cron.daily/0logwatch 
lrwxrwxrwx 1 root root 39 Apr 17 03:46 /etc/cron.daily/0logwatch -> /usr/share/logwatch/scripts/logwatch.pl

Задача решена. сожалею Webalizer - не хотел ложно обвинить вас в том, что вы сильно зависаете от процессора.