Является ли хорошей идеей использовать serilog для записи логов непосредственно вasticsearch - PullRequest
0 голосов
/ 04 июня 2018

Я оцениваю различные параметры сервера распределенного журнала.

В мире Java, как я вижу, наиболее популярным решением является filebeat + kafka + logstash +asticsearch + kibana.

Однако в мире .NET существует serilog, который может отправлятьструктура бревен напрямую к эластичному поиску.Поэтому единственными необходимыми компонентами являются эластичный поиск + кибана.

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

Кто-нибудь может дать мне несколько советов?Спасибо.

1 Ответ

0 голосов
/ 14 ноября 2018

У меня была такая же проблема точно .Наша система работала с «классической» архитектурой elk-stack, то есть FileBeat -> LogStash -> Elastic (-> Kibana).но, как мы выяснили в больших проектах с большим количеством журналов, Serilog является гораздо лучшим решением по следующим причинам:

  1. CI \ CD - когда у вас есть различные типы журналов сразличная структура, которую вы хотите иметь разные типы, Serilog мощность пригодится.в LogStash вам нужно создать другой фильтр, чтобы разбить сообщение в соответствии с шаблоном.это означает, что существует большая связь в аспекте структуры журнала и аспекта LogStash - очень подвержен ошибкам.
  2. обслуживание - Из-за простого CI \ CD и единой точки изменения легче поддерживать большое количество журналов.
  3. Масштабируемость - FileBeat имеет проблему для обработки большихпорции данных из-за файла реестра, который имеет тенденцию «взорваться» - ссылка из личного опыта вопрос о переполнении стека ; вопрос о эластичном форуме
  4. Меньше точек отказов - при serilog журнал отправляется напрямую в эластичный, когда с Filebeat вы должны пройти через LogStash.еще одно место, чтобы потерпеть неудачу.

Надеюсь, это поможет вам в вашей оценке.

...