Я пытаюсь настроить регистратор, чтобы ловить только сообщения уровня ERROR, но мой регистратор всегда, кажется, пишет INFO:cherrypy.access
сообщения в мой файл журнала, чего я не хочу. Я попытался установить глобальный log.error_file
и использовать стандартный протокол регистрации python logging.basicConfig(filename='error.log', filemode='w', level=logging.ERROR)
, но даже если я укажу пороговое значение для сообщений уровня ERROR, я все равно получаю эти сообщения уровня INFO, записанные в файл журнала. Есть ли способ предотвратить это?Предотвращение доступа к вишневым червям
ответ
Похоже, что журналы уровня INFO
подходят для cherrypy.access
. Согласно documentation -
Вы должны установить их как на глобальном уровне, так и на каждое приложение (см. Следующий), но в целом не оба.
log.screen: Установите для этого параметра значение Истина, чтобы на «выходы» выводились сообщения «ошибка» и «доступ». log.access_file: Установите это абсолютное имя файла, в котором вы хотите написать «доступ». log.error_file: Установите это абсолютное имя файла, в котором вы хотите написать сообщения об ошибке.
Вы также должны попробовать установить log.access_file
(аналогично log.error_file
). Или же вы можете добавить обработчик для этого, например, -
from logging import handlers
fname = getattr(log, "rot_access_file", "access.log") #The log for access messsages.
h = handlers.TimedRotatingFileHandler(fname, when='midnight')
h.setLevel(logging.DEBUG)
h.setFormatter(_cplogging.logfmt)
log.access_file = ""
log.access_log.addHandler(h)
можно отключить сообщения доступа, установив мой собственный:
logging.basicConfig(filename='error.log', filemode='w', level=logging.ERROR)
, а затем установка:
cherrypy.log.access_log.propagate = False
Не очень удобно настраивать журналы CherryPy с голым «протоколированием». Убедитесь, что вы понимаете конфигурацию CherryPy и ее среду (см. [Этот вопрос] (http://stackoverflow.com/q/26288820/2072035)). Если вы упорствуете, [эта статья] (http://rhodesmill.org/brandon/2012/logging_tree/) имеет хорошее объяснение дерева журнала «CherryPy» и способов его расширения. – saaj