LINUX.ORG.RU
ФорумAdmin

syslog & messages


0

0

Посоветуйте плиз, как перенаправить сообщения от конкретного демона из /var/log/messages куда-нибудь еще... например в мою прогу.

может кто видел исходники подобные на perl или на чем-нибудь еще? может из какой проги отковырять, которая так делает??

а нужно это для накопления логов в SQL BD.

Из man syslog.conf:
Named Pipes
This version of syslogd(8) has support for logging output to named pipes (fifos). A fifo or
named pipe can be used as a destination for log messages by prepending a pipe symbol (``|'')
to the name of the file. This is handy for debugging. Note that the fifo must be created
with the mkfifo(1) command before syslogd(8) is started.

qwe ★★★
()

а как насчет конкретного демона? это проблема я так понял не очень-то решаемая с обычным syslogd

где бы еще примеры взять?
а то что-то не очень интуитивно понятно как с нимиработать...

desperado
() автор топика

аааа.... понял! как с обычными файлами!

а демонов из общей кучи могет выделить syslog-ng. токо я его еще не поставил...

desperado
() автор топика

А что, строки анализировать нельзя? Каждый демон пишет свое имя.
"Интуитивно" понятно - это неплохо сказано, прямо как про М$ Win.
На деле все просто. Создаешь fifo, например mkfifo /tmp/syslog.
Делаешь запись в /etc/syslog.conf, например "*.* |/tmp/syslog"
(писать все сообщения в fifo). Теперь остается только читать строки
из fifo и анализировать их, например следующим сценарием bash:

#!/bin/bash


cat /tmp/syslog | while read str
do
case `echo $str | awk '{print $5}'` in
"kernel:")
echo KERNEL MESSAGE
;;
*)
echo $str
;;
esac
done

--------------------------------------------

Здесь, если сообщение от ядра то печатается
фраза "KERNEL MESSAGE", иначе строка syslog
печатается целиком. Таким образом в команде
"echo" можно, к примеру, сформировать SQL
запрос и перенаравить по pipe в sql клиент,
например, psql.

qwe ★★★
()

так и сделаю, только на перле, потому как такую обработку строки как мне нужно на шеле я не напишу...

не пришлось бы на сях это потом переписывать, по причине быстродействия...

desperado
() автор топика

Ну, незнаю, обычно хватает bash и awk.

qwe ★★★
()
5 декабря 2002 г.

А есть что-либо в замену syslog, чтобы удобнее было работать с логами и может удобней в настройке?

ander606
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.