Найти - Пользователи
Полная версия: Логирование для анализа действий.
Начало » Python для экспертов » Логирование для анализа действий.
1
VadimK
Дано: проект на django, vps с 2gb оперативки .

Есть несколько проектов ( каждый на своем vps ) со сложной логикой расчетов. В кратце финансовые расчеты которые зависят от десятков различных правил и настроек.
Очень часто возникают вопросы “а почему тут так подсчитано, а не этак”. В результате приходится вытаскивать к себе копию базы за “проблемный” период и запускать расчет, что бы выяснить почему и как считалось. Со временем все обрастло отладочной информацией и выводом текстовые лог файлы. Но если вопрос приходит по расчету, который был месяца 2-3 назад, то или лог файла уже нет или найти концы в логах не реально.

В общем ищу вариант решения данной проблемы. Писать логи в базу не получится, так как данные в каждой операции расчета разные. Пока на ум только приходит поставить elasticsearch и гнать логи расчетов туда. А поверх написать форму поиска по нужным ключам.

Делать все по взрослому с logstash, elastic и kibana - опыта нет вообще, да и бюджет заказчика не позволит.

Может кто посоветует что нибудь в данной ситуации. Красивость решения на последнем месте, меня и консоль вполне устроит Но хотелось бы понять, как делать такие вещи правильно, желательно в пределах минимальных ресурсов.
ZerG
А как по вашему работают сборщики логов вобще?
Есть центральный сервер с базой данных в нее со всех кустов сыпятся ягоды.
Вы же потом при помощи запросов вытаскиваете что вам нужно!
И ненадо ничего выдумывать!

Давно когдато писал даже заметку
http://kobzarcheg.blogspot.com/2012/10/rsyslog.html
Это не готовый ответ на ваш вопрос - но вполне себе информация к размышлению.
VadimK
Я ведь не просто так написал про ресурсы, бюджет. Плюс логи выполнения логики, где учитываются десятки параметров - это совершенно другое, чем системные логи. Особенно когда у каждого процесса свои параметры, но анализировать их надо вместе.

Теоретически mongodb может подойти, но ее не потяну из за требований к памяти. Поэтому как вариант пока тупо в эластик все гнать, у него вроде как достаточно гибкости для поиска по не структурным данным.


ZerG
1. Базу для логов можно держать где угодно - хоть на домашнем компе: - Бюджет тут минимален!
(я уже не говорю что у каждого есть куча знакомых где это можно покрутить - в разрезе же фирмы у которой есть свой оффис (пусть и временный) - ето вобще даже не вопрос)

2.
“Плюс логи выполнения логики, где учитываются десятки параметров - это совершенно другое, чем системные логи.”
Опять ошибка! Это абсолютно одно и то же самое! Суть записи лога - это результат выполнения чего либо (не важно успешный или нет - главное результат). Выполняется он системой - функцией - запросом или еще чем-то абсолютно не имеет никакого значения. Все что нужно сделать это ЛОГ сообщение писать в базу!

Имея все логи в одной базе данных путем нехитрых SQL запросов вы можете формировать очень гибкие правила сортировки и вытаскивать инфу в любой форме и группировать их и так далее!
Особенно с учетом того что ЛОГ сообщение вы имеете возможность формировать самостоятельно
и ставить в базе нужные метки предварительно создав структуру.

То чем занимаетесь вы в данный момент очень сильно отличается от решения задачи! Больше похоже на попытку удаления гландов через ушную раковину!
Хотя волне возможно я не до конца понимаю вашу задачу - однако она мне кажется банальной.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB