
Хоть выкраить лишнюю минутку было более чем сложно. Последние две недели у меня Django-NonStop.
Все основаное на идее, которую я описывал ранее.
Вот, вчера ночью таки закончил. На самом деле я это штуку реализовал уже давно, просто захотелось упаковать в более продажный вид, ну и по случаю добавил там рюшечек всяких прикольных
В репозитарии лежит пример использования этого приложения вместе с апом. Так что можете просто открыть settings.py и глянуть, какие поля в настройках необходимо добавить. Не стандартные поля помечены ##ADD
Что под капотом?
Возможность логить. (В шоке?)
-
from django.http import HttpResponse
-
from csvlog import glog
-
def somelog(request):
-
glog('executin log by default name')
-
glog.err('ERR, some error hapend')
-
glog.imp('IMP, some important information')
-
glog.inf('INF, some information')
-
glog.log('LOG, some log')
-
glog.trc('TRC, some trace')
-
glog.dbg('DBG, debug information')
-
return HttpResponse('OK')
И вы можете сами указывать какие данные из стека вы хотели бы сторить. Настройка представляет собой набор ссылок на функции.
Автоматом сторятся данные реквеста и респонса. Точна также вы можете задавать какие куски этих объектов идут к вам в лог.
Также под ваш лог, автомат создаётся объект в моделях csvlog.models.LogDump. И вы можете импортировать в него данные из логов и работать с ними через вашу ORM. Пожалуй это основной плюс.
-
python manage.py log_to_base log.csv
Ну и маленькая рюшечка в нагрузку. Баг репортинг.
Все несловленные вами эксепшены, ловятся ей, и сторятся в базу. Я когда узнал, сколько всего можно то от ексепшена то узнать, я не был уверен, что мне базы то хватит. А пользователю выводится предложение еще и обматерить вас, ну т.е. оставить свой баг репорт.
Проект очень, очень нуждается в жесткой критике.




