У меня есть приложение, которое в любой момент может быть запущено на 1 из 4 серверов Windows . Следовательно, если я ищу конкретный элемент журнала, он может быть в любом из 4 файлов журнала. Я ищу решение, при котором мне нужно искать только в одном месте все объединенные журналы для каждого из 4 серверов.
Я собираюсь сделать это без коммерческого продукта, а также хотел бы чтобы сделать это без значительного снижения производительности.
Я использую log4net для входа в указанный файл на сервере. Одно из решений - перенаправить журналы log4net в базу данных MS SQL, однако меня беспокоит производительность. Есть ли способ объединить отдельные файлы независимо от кода log4net?
Первоначально я разместил этот вопрос в stackoverflow, и одно предложение заключалось в том, чтобы
«Сконфигурируйте log4net для регистрации в журнале событий и настройте пересылку журналов соответствующих событий на центральный сервер журналов на всех 4 серверах приложений».
Как мне выполнить это или какое другое решение вы бы предложили?
Рассмотрим вариант ведения журнала, например, log4net. Это добавляет гибкости и вам не нужно разрабатывать этот код утилиты.
MS SQL может быть центральным решением. Не волнуйтесь о производительности до тех пор, пока не бросите в нее большое количество записей лога.
Graylog - это еще один способ централизованного ведения логов, свободный и с открытым исходным кодом. Коллекционеры могут получать как журналы событий Windows, так и файлы, а также входы syslog. Основанный на эластичном поиске, платформа поиска по масштабу
.