Рубрики

Лучшие статьи

Настройка логов syslog-ng

Опубликовал 18 мая 2009 в рубрике Gentoo. Комментарии: Комментариев нет   Просмотров: 141 просмотров

Работая в среде Gentoo, хочется такого окружения к которому привык. И запись логов одна из составляющих удобства в моём понимании. Во FreeBSD у меня каждый демон писал в свой лог, мне так больше нравится, а гента по дефолту пишет всё в /var/log/messages. Поди попробуй потом разбирись почему не цепляется впн или не стартует mysql. Километровый лог лопатить мало удовольствия.

Вот и решил покурить настройку демона syslog-ng. Моя задача – заставить писать каждый демон в свой лог. Поехали.

Настройка сводится к редактированию конфиг файла syslog - /etc/syslog-ng/syslog-ng.conf

options {
chain_hostnames(off);
sync(0);

# The default action of syslog-ng 1.6.0 is to log a STATS line
# to the file every 10 minutes. That's pretty ugly after a while.
# Change it to every 12 hours so you get a nice daily update of
# how many messages syslog-ng missed (0).
stats(43200);
};

source src {
unix-stream(«/dev/log» max-connections(256));
internal();
file(«/proc/kmsg»);
};

destination messages { file(«/var/log/messages»); };
destination console_all { file(«/dev/tty12"); };
destination cron { file(«/var/log/cron.log»); };
destination pptp { file(«/var/log/pptp.log»); };
destination sshd { file(«/var/log/sshd.log»); };

filter f_cron { program(«cron»); };
filter f_pptp { program(«pptp») or program(«pppd»); };
filter f_sshd { program(«sshd»); };
filter all { not program(«cron») and not program(«pppd»)
and not program(«pptp») and not program(«sshd»); };

log { source(src); filter(all); destination(messages); };
log { source(src); destination(console_all); };
log { source(src); filter(f_cron); destination(cron); };
log { source(src); filter(f_pptp); destination(pptp); };
log { source(src); filter(f_sshd); destination(sshd); };

Система понятная, но намой взгляд замороченная какая-то. Сначала объявляем destination – путь к лог-файлу. Потом задаем фильтр – от какого демона принимать сообщения. Причем в фильтре all задаем от кого НЕ принимать мессаги. Этот фильтр применяем к основному логу – /var/log/messages, дабы не засорять его.

Ну и в конце уже собираем этот конструктор в единое целое.

Создаем все заведеные лог-файлы и релоадим syslog-ng

/etc/init.d/syslog-ng reload

У меня всё закрутилось, как я и хотел. Зер гут!

Поделись:
  • Добавить ВКонтакте заметку об этой странице
  • Мой Мир
  • Facebook
  • Twitter
  • LiveJournal
  • MySpace
  • В закладки Google
  • Google Buzz
  • Яндекс.Закладки
  • LinkedIn
  • Technorati
  • del.icio.us
  • Digg
  • БобрДобр
  • Memori.ru
  • МоёМесто.ru
  • Сто закладок
  • Blogger
  • Блог Li.ру
  • Блог Я.ру
  • Одноклассники

Метки: ,
1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Загрузка ... Загрузка ...



Оставить комментарий или два

RSS

rss Подпишитесь на RSS для получения обновлений.

Add to Google Reader or Homepage

Подписаться на рассылку E-Mail:

Опрос

Статьи на какую тему Вам более интересны?

Просмотреть результаты

Загрузка ... Загрузка ...