Как отлаживать не отвечающую, туманную ошибку Werkzeug 404?

Мы используем приложение Flask, обслуживаемое gunicorn + Nginx в док-контейнере. Примерно один или два раза каждые 24 часа наш регистратор отображает следующее сообщение:

Dec 31 00:27:36 Computer logger: [12/31/2019 08:27:36] backend ERROR:   404 Not Found: The requested URL was not found on the server. If you entered the URL manually please check your spelling and try again. Traceback (most recent call last):   File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1949, in full_dispatch_request     rv = self.dispatch_request()   File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1925, in dispatch_request     self.raise_routing_exception(req)   File "/usr/local/lib/python3.6/site-packages/flask/app.py", line 1907, in raise_routing_exception     raise request.routing_exception   File "/usr/local/lib/python3.6/site-packages/flask/ctx.py", line 350, in match_request     result = self.url_adapter.match(return_rule=True)   File "/usr/local/lib/python3.6/site-packages/werkzeug/routing.py", line 1799, in match     import pdb werkzeug.exceptions.NotFound: 404 Not Found: The requested URL was not found on the server. If you entered the URL manually please check your spelling and try again. 

На что это влияет или чем это вызвано, совершенно загадочно, и трассировка ни в малейшей степени не помогает. На стороне пользователя заметных изменений нет. Я пробовал много вещей, включая запуск приложения. в режиме отладки. Моя последняя попытка заключалась в том, чтобы зайти в сам /usr/local/lib/python3.6/site-packages/werkzeug/routing.py и изменить поведение ошибки. Что происходит, однако, так это то, что вышеприведенное сообщение просто распечатывает мои изменения кода, но, похоже, на самом деле не запускает эти изменения. (т. е. все работает точно так же, независимо от того, как я изменяю этот файл. Вместо этого регистрируются сами изменения [а не последствия запуска этого измененного кода]).

Как отлаживать такую ​​не отвечающую ошибку Werkzeug 404? Какие параметры/настройки/методы мне не хватает? Почему изменения в коде routing.py (например) игнорируются, а выводятся на экран (как будто то, что делает Python, просто печатает блоки кода между line x и line y).


person AmagicalFishy    schedule 31.12.2019    source источник
comment
Можете ли вы посмотреть в журналах Nginx URL-адреса запросов, которые привели к ошибке 404?   -  person Ry-♦    schedule 31.12.2019
comment
@Ry- хорошая идея! Я проверил, но столкнулся с этой проблемой, поэтому я надо подождать, пока ошибка снова не выскочит. :л   -  person AmagicalFishy    schedule 31.12.2019