[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: "Правильные" демоны - не демоны?



On Fri, 28 Aug 2009 14:51:55 +0400
Alexey Pechnikov <pechnikov@mobigroup.ru> wrote:

> Hello!
> 
> On Friday 28 August 2009 14:07:02 Alexander Galanin wrote:
> > rsyslog, к примеру (никто ведь не заставляет использовать только одну из
> > многочисленных инкарнаций syslogd), умеет составлять имя файла из
> > полей сообщения. Вот неизменённый кусок из документации, который, я
> > надеюсь, ты осилишь допилить до нужного тебе:
> > 
> > $template DynFile,"/var/log/%HOSTNAME%/%programname%.log"
> 
> Этот процесс клонируется сколько-то раз (в том числе, каждый 
> разработчик может для себя один или более экземпляров запустить), при этом
> меняется число NNN. Каждый процесс посылает сообщения разного уровня в 
> сислог (ошибки, информация, предупреждения, плюс еще нужно разделить
> сообщения по имени модуля регекспами). Логи должны писаться с правами 
> пользователя, который запустил клон и желательно в ~/log/.... Положим, 
> NNN можно передать в самих сообщениях, rsyslog в этом случае логи разделит. 
> Но пользователя получить не удастся, такая информация в syslog не передается.

А ты передай. Рядом с NNN.

> И как изменить права на эти лог-файлы?

man chmod

> Есть ли какая-то утилита, которая 
> умеет с stdout брать лог и пересылать в syslog - чтобы объединять сообщения 
> в единый лог-файл?

Наверно я открою тебе великую тайну, но можно сделать ещё и
$command >logfile 2>errlogfile
причём безо всяких проходов через syslog.
И потом останавливать этот так называемый сервис в том же xterm-е, в
котором ты его запустил, с помощью Ctrl-C.

А уж если тебе понадобится форвардить stdout и stderr в syslog, написать
малюсенькую утилиту в 10 строк на си сможет кто угодно, у кого команда
"man 3 syslog" не вызывает священного ужаса.

-- 
Alexander Galanin
http://galanin.nnov.ru

Attachment: pgpDnzMUWDx_Q.pgp
Description: PGP signature


Reply to: