запись в выходной поток 3 (stdout или stderr) - PullRequest
0 голосов
/ 12 августа 2011

Можно ли записать в 3-й поток вывода? Моя ситуация в том, что у меня есть несколько сценариев, которые выполняют различные команды, удаленно через сетку машин. Эти команды приводят к stdout и stderr. Однако я хотел бы сообщить о прогрессе центральной управляющей машине, не загромождая ее чередующимися stdout и stderr различных машин в сетке. Я думал, что если есть возможность записи в 3-й поток вывода, что я мог бы использовать его для определенных событий состояния из сетки, о которых может сообщить управляющий скрипт, тем временем stdout и stderr могут оставаться перенаправленными в файлы журнала для отладки что-то пошло не так. Что бы это ни стоило, я, вероятно, буду реализовывать это в ruby, а задействованные машины будут представлять собой смесь Windows и Unix.

1 Ответ

0 голосов
/ 12 августа 2011

Я не думаю, что ваша архитектура ведения журнала ограничена языком, который вы используете, но log4r и syslog приходят на ум, если вы настроены на ruby. Если вам нужно по-настоящему мультиплатформенное решение, может быть, вы подумаете о некоторой шине сообщений или ØMQ , хотя это потребует дополнительного уровня сложности.

Звучит как обычные файлы журналов для информации и ошибок, в которые все ваши скрипты пишут, может быть самым простым решением. Поскольку вы управляете множеством небольших процессов, а не одним большим монолитным приложением, использование такого инструмента, как Splunk , может помочь объединить и проанализировать все зарегистрированные события.

...