Re[4]: Как смерить гордыню и бороться с синдромом NIH
От: student__  
Дата: 15.12.22 19:55
Оценка:
Здравствуйте, flаt, Вы писали:

F>Perl же.


Я немного наврал. Там дело в том, что формат хранения и передачи логов бинарный, но некоторую вполне конкретную часть лога можно воспринимать полностью как строку. но! Нужна конверсия из бинаря в строку по любому. И длина каждой записи нефиксирована.
Т.е. сам анализ (в простейшем случае поиск по регекспам) будет производиться над строкой, но парсить бинарь все равно надо.

Т.е. придется уже делать велосипед из двух ЯП C+Perl. А это усложняет дистрибуцию софтины даже для меня одного.
Поэтому я просто реализовал либу для последовательного чтения записей, а она практически как есть используется в высокоуровневом коде на C++, в котором уже регекспы, блэкджэк, и...

Такой подход (использование сишной либы позволит мне в будущем также вызывать, например плагины декодирования или даже те же плагины анализа на лету.
Или я могу при помощи плагина конвертить лог например в JSON и сохранять в mongodb для кастомного поиска, который выходит за рамки простых фильтров по полям. Ну а в монге уже можно на питоне хреначить.

А поверх монги можно навернуть какую-нибудь big-data логику. Искать всякие аномалии, "целый год без разрыва, а вчера..." и проч.

И логов может быть очень много (гигабайты), т.е. в идеале их надо перед началом анализа утром скачивать, читать в RAM, чтобы потом не думать про дисковый кеш и проч. "почему на моем дешманском ssd все так медленно).

Так что Perl... только на самом верху разве что, до которого не дошли руки.
Отредактировано 15.12.2022 20:08 student__ . Предыдущая версия . Еще …
Отредактировано 15.12.2022 20:02 student__ . Предыдущая версия .
Отредактировано 15.12.2022 20:00 student__ . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.