Глобальная обработка исключений в Google App Engine

Вместо того, чтобы инкапсулировать весь мой код в блок try {} except {}, есть ли какой-нибудь способ устранения исключений во всем мире?

В основном я ищу способ иметь глобальный обработчик исключений, который будет обрабатывать все необработанные исключения в моем приложении python, написанном для движка Google

3 Solutions collect form web for “Глобальная обработка исключений в Google App Engine”

Если вы используете инфраструктуру webapp, вы уже должны определять подкласс RequestHandler, который служит в качестве базового класса, при этом все обработчики вашего приложения расширяют это. Вы можете просто переопределить handle_exception , который служит глобальным обработчиком исключений для любых неперехваченных исключений.

Реализация по умолчанию вызывает self.error (500), регистрирует исключение, и если debug is on, выводится stacktrace.

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

Ну, на самом базовом уровне вы можете обернуть все сценарии вашего обработчика, на которые ссылается app.yaml, в гигантском блоке try-except.

Если вы используете инфраструктуру webapp, рассмотрите переопределение handle_exception() для каждого из ваших обработчиков запросов. Если вы хотите, чтобы все обработчики запросов имели определенную базовую обработку исключений, вы можете обработать запрос, который реализует этот метод, а затем выводит из него все ваши обработчики.

У вашего приложения, вероятно, есть функция main() , поместите try / except в эту функцию, и он поймает все из вашего приложения.

  • Не удалось выполнить маршрут webapp2
  • Безопасное хранение переменных среды в GAE с помощью app.yaml
  • Работа с субдоменом в движке Google
  • Извините, непредвиденная ошибка: объект 'module' не имеет атрибута 'SMTP_SSL'
  • Проблема массового загрузчика приложения Google App Engine при использовании автоматической генерации yaml и объектов с числовым идентификатором
  • PyCrypto на сервере разработки Google App Engine «ImportError: невозможно импортировать имя blockalgo»
  • Как я могу использовать bcrypt / scrypt для appengine для Python?
  • Проект PyDev для Google App Engine не находит webapp2
  •  
    Interesting Posts for Van-Lav

    Стандартное отклонение для установленных параметров с scipy.ODR, когда данные содержат ошибку

    WxPython меняет форму растровой кнопки

    установка тайм-аута на вызов urllib2.request ()

    Есть ли способ конвертировать числовые слова в целые числа?

    Являются ли python «глобальными» (модульными) переменными нитями локальными?

    HOWTO: Создать оболочку API Python?

    Задайте профиль предпочтений автоматической загрузки, используя selenium2library

    Как обнаружить пулевые отверстия на цели с помощью python

    Прокси-сервер Python не обрабатывает запросы POST

    Можно ли легко извлечь конфигурацию запуска python (с дополнительным путём) из Pycharm?

    Python назначает две переменные на одной строке

    Как читать аудиофайлы в Python, аналогичные аудиозаписям Matlab?

    Проблема с Python3 sleep ()

    Как я могу отправить сообщение кому-то с моим боттом телеграммы, используя свое имя пользователя

    Где я могу получить бесплатные библиотеки / компоненты GSM для delphi или python?

    Python - лучший язык программирования в мире.