Персональный
сайт
Игоря
Сысоева



sysoev.ru
mod_accel
mod_deflate
программирование
windows
freebsd
apache
pppd
unix
web

для писем

Лог-файлы

 

30.08.1999

Лог-файл pppd

Во время работы pppd делает некоторые записи в файл /var/log/messages с помощью syslogd, однако записи эти весьма скудны. Вот типичный пример:

pppd 2.3.5 started by root, uid 0
Connect: ppp0 <--> /dev/cuaa0
Modem hangup, connected for 1 minutes
Connection terminated, connected for 1 minutes

Естественно, при такой диагностике невозможно сказать определённо, что явилось причиной неудавшегося соединения, кроме того, что соединение не удалось. Для получения более информативного лога pppd нужно указать параметр debug и указать ещё один лог-файл в файле /etc/syslog.conf, поскольку в /var/log/messages попадет только достачно серьёзные сообщения. В новый лог-файл будут поступать все сообщения от pppd. Задать этот файл можно, добавив буковку "d" в файле /etc/syslog.conf в следующую строку:

!pppd
*.*                           /var/log/ppp.log
либо, если Вы всё же планируете использовать ppp, добавить ещё один файл /var/log/pppd.log:
!ppp
*.*                           /var/log/ppp.log
!pppd
*.*                           /var/log/pppd.log

После этого нужно рестартовать syslogd:

kill -1 `cat /var/run/syslog.pid`

Во втором случае нужно ещё создать файл /var/log/pppd.log:

touch /var/log/pppd.log

и, кроме того, добавить строчку в файл /etc/newsyslog.conf

/var/log/pppd.log             640  7     *    24
если Вы, конечно, не хотите, чтобы файл /var/log/pppd.log со временем разросся до гигантских размеров.

Лог-файл скрипта соединения

Кроме своего лог-файла, при запуске в фоновом режиме pppd также ведёт лог скрипта соединения в файле /etc/ppp/connect-errors. В этот файл попадает всё, что скрипт соединения выводит в стандартный поток вывода ошибок. Надо заметить, что каталог /etc/ppp/ не самое удачное место для лог-файлов, поэтому если Вы планируете постоянно вести лог скрипта соединения, то можно использовать патч, после которого этот лог будет записываться в файл /var/log/connect.log.

Если же скрипт соединения использует syslogd, например, как chat с ключём -v, то в файл /etc/syslog.conf нужно добавить строку

!chat
*.*                           /var/log/connect.log
а затем проделать всё, что было сказано выше по поводу файла /var/log/pppd.log. Кроме того, ничто не мешает вести общий лог в одном файле:
!pppd
*.*                           /var/log/pppd.log
!chat
*.*                           /var/log/pppd.log

(C) Igor Sysoev
http://sysoev.ru