Эффективная регистрация stdin с rsyslog - PullRequest
4 голосов
/ 30 июля 2009

Наша среда: CentOS 5, которая поставляется с Apache 2.2 и rsyslog 2.0.6

Чтобы отправить журнал ошибок Apache 2.2, мы следовали инструкциям, приведенным здесь: http://wiki.rsyslog.com/index.php/Working_Apache_and_Rsyslog_configuration

Это работает, но включенный Perl-скрипт очень неэффективен - он отнимает огромную часть системных ресурсов, и, взглянув на подпрограмму Sys :: Syslog :: syslog, я могу себе представить, почему - он выполняет много анализа параметров и перемещается прежде чем он действительно отправит сообщение.

Есть ли какая-нибудь эффективная программа на C / C ++ для замены этого скрипта? Кажется, это 5-линейный лайнер, но я бы не стал изобретать велосипед заново.

Также приветствуются другие решения для эффективной отправки журналов apache ERROR в syslog.

Спасибо.

Ответы [ 2 ]

3 голосов
/ 27 августа 2009

На самом деле это довольно избыточно - утилита командной строки «logger» будет читать стандартный ввод и отправлять каждую строку в системный журнал, если ей не передано сообщение в командной строке.

Добро пожаловать в любом случае ....:)

2 голосов
/ 31 июля 2009

Я написал программу на C, которая выполняет ту же функцию, что и скрипт perl, по ссылке выше. Кажется, что требуется гораздо меньше ресурсов. Исходный код программы был загружен по ссылке в моем вопросе.

...