Я думаю, что решение вашей проблемы простое: просто измените порядок Sentry404CatchMiddleware
в верхней части вашей настройки MIDDLEWARES
. По крайней мере, он должен быть выше промежуточного программного обеспечения для плоских страниц.
Чтобы объяснить, что происходит, полезно понять порядок , в котором выполняются промежуточные программы. Я предполагаю, что вы следовали за Sentry docs и поместили его внизу. Это делает его первым промежуточным программным обеспечением, которое будет выполнено. Если приходит запрос на непревзойденный шаблон URL, Django поднимает 404, и промежуточное программное обеспечение Sentry регистрирует его. Но затем Django проходит через другие промежуточные программы, и промежуточное программное обеспечение для плоских страниц делает то, что ищет, если существует соответствующая страница, и фактически заменяет ответ.
Если вы переместите промежуточное программное обеспечение Sentry наверх, будет зарегистрировано только 404 ошибки, которые всплывают на всем протяжении стека промежуточного программного обеспечения, что, вероятно, то, что вам нужно.