Что является лучшей практикой в использовании log4j уровни при кодировании. Я имею в виду, когда делают мы используем ИНФОРМАЦИОННЫЙ вход, когда делают мы используем вход ОТЛАДКИ / Регистрация ошибок и т.д.
Лучше всего учиться на примере. Читайте исходные тексты некоторых вещей с открытым исходным кодом, например, о, Tomcat или что-то еще в вашей области применения, и посмотрите, что вы видите.
.В общем, я следую следующим рекомендациям:
ERROR протоколирование должно всегда быть включено.
INFO + DEBUG должно быть включено при отслеживании проблем/ошибок.
.] К тому, о чем говорили другие, я бы добавил уровни TRACE и FATAL, первый хорошо подходит для очень подробного протоколирования, второй - для обозначения тотального стоппера шоу. Есть общие инструкции по использованию уровней, о которых упоминалось выше. Однако, наиболее важным []важным [] является то, как []YOU[] будет его использовать и как ваши []USERS[] будут его интерпретировать. Вам нужны уровни, чтобы сфокусироваться на проблемах, поэтому решите, в чем проблема в вашем случае. Вашим пользователям вряд ли когда-нибудь понадобятся отладочные утверждения, но они определенно захотят закрепить проблемы и сообщить о них вам.[
].Я не думаю, что вы сможете найти то, что вы ищете к сожалению - у меня такая же проблема.
Шаблоны WordPress могут предположить довольно известную модель данных - каждая установка WordPress использует одни и те же предсказуемые имена таблиц, каждое (скаженное) страницу блога имеет четко определенный набор данных, которые будут переданы на шаблон - и даже Плагины имеют только ограниченное количество точек плагина, чтобы добавить дополнительные данные.
Напротив, ваше приложение Django может содержать все . Я мог бы предоставить вам красивый шаблон, но если только данные, которые я использую в шаблоне, точно совпадающих на вашей модели данных, она не будет полезна. Я мог бы сделать шаблон очень общим - например, просто имел его отображение переменную, называемую «формой», если она присутствует, произойдет по поводу «сообщений», если какие-либо присутствуют в верхней части страницы, отобразить «нижний колонтитул» в нижней части и т. Д. - Но это займет у вас примерно за 20 секунд, прежде чем вы захотите настроить отображение этой формы, а затем вы можете редактировать свои собственные шаблоны.
Я думаю, что самая близкая вещь, которую вы собираетесь найти, - это библиотеки пользовательских пользовательских интернет-пользовательских пользовательских интернет-пользовательских пользователей, такие как jQuery или Yui , которые могут справиться с большим количеством работ по созданию вашего пользовательского интерфейса Snazzy.
Я хотел бы, чтобы быть доказанным, хотя, это спасет меня проходить через то же проб, когда вы проходите сейчас.
Обновление: повторно чтение этого, оно пришло в голову, что вы ищете CMS, который Django нет. Две секунды работы с Google показали Django CMS . Я не пробовал это, но, возможно, это ближе к тому, что вы ищете? У Вики Django есть таблица сравнения различных решений CMS на основе Django
-121--3690587-Моя базовая линия всегда в том, что info уровень эквивалентен системе .Out, и ошибка эквивалентна System.err.
Debug - Здесь вы помещаете всю информацию о трассировке, а также конкретно информации, которую вы не хотите видеть, когда ваш «уровень комфорта» является System.out.
Информация - Используйте это для общих сообщений, сообщений о ходе прогресса, для сообщений, связанных с приложением, но не для трассировки.
Warn - предоставить предупреждения о том, что что-то неверно, возможно, неожиданно используется или что используется обходной путь, но приложение все еще может продолжаться (Timeout / Retries сокета, неверный ввод пользователя и т. Д.).
Ошибка - предупреждает о проблемах, которые предотвращают его приложение, например, База данных снижается, отсутствует конфигурация загрузки.
Общая ошибка при записи библиотек - использовать уровень ошибки, чтобы указать проблемы с приложением вызова (код, который использует библиотеку) вместо того, чтобы указывать на реальные ошибки в самой библиотеке. Смотрите, например, эта гибернация Bug -> http://opensource.atlassian.com/projects/ibernate/browse/hhhh-3731
Это действительно раздражает, потому что сообщения от уровня ошибок действительно трудно подавлять, поэтому использовать их только указывают на проблемы с вашим собственным кодом.
Все - Я на самом деле не использую этот, он практически такой же, как отладка или след.