On Fri, 28 Aug 2009 15:18:49 +0400 Alexey Pechnikov <pechnikov@mobigroup.ru> wrote: > > > Этот процесс клонируется сколько-то раз (в том числе, каждый > > > разработчик может для себя один или более экземпляров запустить), при этом > > > меняется число NNN. Каждый процесс посылает сообщения разного уровня в > > > сислог (ошибки, информация, предупреждения, плюс еще нужно разделить > > > сообщения по имени модуля регекспами). Логи должны писаться с правами > > > пользователя, который запустил клон и желательно в ~/log/.... Положим, > > > NNN можно передать в самих сообщениях, rsyslog в этом случае логи разделит. > > > Но пользователя получить не удастся, такая информация в syslog не передается. > > > > А ты передай. Рядом с NNN. > > Сервис может быть запущен пользователем X, но от имени www-data. Это только > система init знает, кто же на самом деле запустил. А ещё это знает тот самый разработчик, который его запустил. Он же правил его конфиги и указывал ему параметры для запуска. В том числе он может и указать идентификатор для syslog-а. Позволю себе сформулировать за тебя, что же ты пытаешься от нас узнать, отфильтровав домыслы, которые мешают видеть задачу и постоянно уводят куда-то в сторону излишне усложнённых решений. Если это решение не устраивает, изволь указать его конкретные недостатки, но не в форме "оно не реализует всех возможностей <подставить имя суперпупернавороченной системы логгинга/ротации/фильтрования и прочих шашек и поэтесс>". Есть некая программа, которая разрабатывается в твоей конторе. Есть несколько разработчиков, одновременно на одном сервере её запускающих. Задача: получить логи от каждого инстанса раздельно и читать их со время отладки. Усложнение задачи: из-за недодумок в проектировании логгинг не абстрагирован от конкретного метода логгинга (через syslog). Решение: Реализовать два метода логгинга. Передавать метод логгинга (syslog/файл) и файл, в который писать результат, каждому инстансу программы как сейчас передаётся порт для ожидания входящих соединений. Фильтровать нужные записи из лога с помощью grep. > Да, если вам так просто написать эту самую малюсенькую утилиту, которая будет > через init-систему определять истинного владельца (по имени сервиса можно > найти скрипт запуска), собирать логи, менять конфигурацию сислога для > логирования в нужную директорию и проч., хотелось бы это увидеть :-) Нет, милый друг, ты подменяешь задачу "читать из пайпа и писать в syslog" на другую. А задачи, сформулированные через неприличное место, я решаю только за материальное вознаграждение. -- Alexander Galanin http://galanin.nnov.ru
Attachment:
pgpQWkJVPi0e1.pgp
Description: PGP signature