Как переслать лог файлы в остальные API - PullRequest
0 голосов
/ 11 марта 2020

Я немного волнуюсь, принимая очень неправильное дизайнерское решение, поэтому я и спрашиваю здесь.

В настоящее время я пытаюсь создать клиент (python), который отслеживает несколько типов файлов журнала - в основном из внутренних инструментов - формат журнала никогда не бывает одинаковым (xml, json, csv, ...). Задача этого клиента состоит в том, чтобы получать каждое новое событие в файлах журнала, немного его обогащать (в основном просто добавляя какой-то идентификатор сеанса), а затем пересылать его в серверное приложение с помощью вызова rest. Затем серверное приложение выполняет некоторые минимальные проверки и сохраняет полученные события в elasti c.

В настоящее время я не уверен, как реализовать эту пересылку журналов - я имею в виду два подхода.

  1. Создайте все самостоятельно. Поэтому я бы написал инструмент python, который использует регулярные выражения для разделения файлов журнала на разные события и перенаправления событий в остальные API. Поначалу это не кажется слишком сложным, но я ожидаю, что оно будет очень подвержено ошибкам и требует значительного обслуживания (например, как развернуть новое регулярное выражение для новых лог-файлов). Кроме того, я не могу найти надежную возможность отслеживать несколько файлов на предмет изменений и получать только изменения.

  2. Использовать какой-либо тип elasti c для поиска и пересылки данных напрямую в elasti c. Вероятно, это самый быстрый подход, но я должен был бы выставить elasti c напрямую inte rnet (не может сделать это в качестве инженера по безопасности), и мне пришлось бы установить отдельное программное обеспечение (сервер пересылки). С другой стороны, эти экспедиторы уже поддерживают множество возможностей для работы с различными форматами журналов.

  3. Я все еще жду идеального решения и надеюсь на вашу помощь :)

Спасибо:)

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