Назад | Перейти на главную страницу

Анализ журнала сценариев с открытым исходным кодом: инструменты для разбивки сообщений журнала stderr на группы (нормальные ошибки против аномальных) или просмотра тенденций (мы получаем меньше этого сообщения, а больше этого)

Представьте себе некоторые Linux-системы со сценариями разных типов (в основном PERL, но это может быть что угодно, что записывает в STDERR), которые запускаются 100 раз разными пользователями с немного разными потребностями.

Журналы сохраняются для вывода и предупреждений / ошибок (stderr) при каждом запуске скрипта. Это означает, что накапливаются тысячи журналов.

Пользователи совершают ошибки. А разработчики не всегда пишут чистый код и т. Д.

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

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

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

Полезные функции могут включать:

Например, можно взять все журналы, созданные с помощью stderr, обработать их, пропустить через sort и uniq -c и снова отсортировать, чтобы составить список строк ошибок от наименее частых к наиболее частым. Можно также начать сбрасывать журналы в какую-то базу данных SQL.

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

Разрабатываете ли вы собственные инструменты для такого рода вещей или есть хорошие альтернативы с открытым исходным кодом?

Мои мысли были бы такими: Используйте petit (http://opensource.eyemg.com/Petit) для анализа вместо uniq. Журналы могут храниться в формате .gz, так что следующие могут достичь ваших первых трех целей, и это GPL. Нет графического интерфейса или понятия экспорта.

zcat logfile.gz | petit --hash

Или

zcat logfile.gz | petit --dgraph

Это звучит как Splunk будет хорошим ответом на многие ваши требования, если не на все. Приступить к оценке довольно легко. Если вы уже рассмотрели это, возможно, прокомментируйте, почему это не соответствует вашим потребностям.

Ура