направить журнал в определенный обработчик, но не в другие, в журнале Python - PullRequest
0 голосов
/ 23 мая 2019

У меня есть приложение Flask, для которого я хотел бы написать метод global_error_handler, который принимает такие параметры, как email_admin, и отправляет электронное письмо администраторам только тогда, когда этот параметр равен True.

Если бы я хотелиспользовать встроенные в Python функциональные возможности ведения журналов (вместо того, чтобы, например, получать информацию об исключении из sys.exc_info и самостоятельно форматировать электронную почту, какие у меня есть варианты того, как это сделать? Что я действительно застрял, так это:Кажется, я могу сказать, что в момент возникновения исключения, пожалуйста, направьте это в этот конкретный обработчик журналов, а не в другой. Нужно ли мне писать более одного регистратора, каждый с определенным обработчиком, и иметь разные места назначения журнала ошибок?таким образом?

1 Ответ

0 голосов
/ 23 мая 2019

Вы можете зарегистрировать свои собственные обработчики ошибок, как указано здесь , в котором упоминается

Обработчики могут быть зарегистрированы для любого класса исключений, а не только для подклассов HTTPException или кодов состояния HTTP.Обработчики могут быть зарегистрированы для определенного класса или для всех подклассов родительского класса.

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

Что касается обработки ошибок с помощью встроенной регистрации, я бы посоветовал вам ознакомиться с документами Flask здесь , в которых описывается, как вы можете либо настраивать обработчики (например, используя SMTPHandler), либо вообще удалять обработчики по умолчанию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...