Просмотр вывода нескольких консольных приложений .Net в одном месте - PullRequest
5 голосов
/ 20 сентября 2011

У меня есть консольное приложение C #, которое я развертываю около 20 раз (с разными настройками конфигурации) и запускаю. Как вы можете себе представить, трудно следить за тем, что происходит с 20 запущенными приложениями (в конечном итоге я собираюсь развернуть их как службы Windows), так есть ли что-нибудь, что может легко показать их результаты в одном месте?

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

Edit:

Я собираюсь записывать ошибки и останавливать / запускать информацию в базу данных. То, о чем я говорю здесь, - это общая информация об обработке, которая не так уж важна для повторного рассмотрения, но интересна для просмотра во время ее работы в консольном приложении.

Ответы [ 3 ]

4 голосов
/ 20 сентября 2011

Я успешно использовал log4net и его настраиваемый UdpAppender. Затем вы можете указать все UdpAppenders на один компьютер, где вы можете получать сообщения Udp, например, с помощью Log4View.

Поскольку он настраивается, его можно использовать при установке и отладке в рабочей среде, а затем повысить уровень ведения журнала, чтобы выводить только сообщения ОШИБКИ вместо сообщений ОТСУТСТВИЯ или ИНФОРМАЦИИ.

http://logging.apache.org/log4net/

http://www.log4view.com

http://logging.apache.org/log4net/release/config-examples.html

2 голосов
/ 20 сентября 2011

Может быть, потому что я пришел из базы данных, но как насчет использования SQL Server с таблицей журналов для отслеживания активности в разных приложениях?

БД ориентированы на параллелизм и легко справятся с несколькими приложениями, вставляющими данные в одну и ту же таблицу журналов, а также вы получите возможность нарезать и нарезать кубиками данные столько раз, сколько захотите, используя преимущества уже существующих функций агрегирования. в среде БД.

Если вы пойдете по этому маршруту, вам, вероятно, потребуется рассмотреть возможность ведения этой таблицы (период хранения журнала и т. Д.).

Вы также можете начать использовать такие инструменты, как Splunk , чтобы сопоставлять все данные журнала и запускать соответствующие сбои приложения для сбоев системы или среды (если они отслеживаются).

0 голосов
/ 20 сентября 2011

Я бы вторым Микаэлем Остбергом и рекомендовал бы использовать библиотеку логгеров (log4net или nlog).Существует много опций, в которых вы можете отправлять сообщения в базу данных или в очереди и т. Д. ... Поскольку вы можете легко включить или отключить ведение журнала, вы даже можете сохранить его в своих службах в качестве ловушки монитора на случай, если произойдет что-то странное

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...