#django #docker-compose #prometheus #django-middleware
#django #docker-compose #prometheus #django-промежуточное ПРОГРАММНОЕ обеспечение
Вопрос:
Я хотел отслеживать свое приложение django с помощью prometheus, и я добавил django-prometheus (2.1.0), а затем все мои запросы, кроме /metrics
случаев, когда вызывает 500 DEBUG=FALSE
. Я не могу понять, почему он работает только с. DEBUG=TRUE
# 'django_prometheus.middleware.PrometheusBeforeMiddleware',
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
# 'django_prometheus.middleware.PrometheusAfterMiddleware',
Что-то не так с моими промежуточными программами?
—— Обновление: единственное, что я сделал DEBUG=FALSE
, когда:
if not DEBUG:
sentry_sdk.init(
"<sentry_url>",
integrations=[DjangoIntegration()]
)
Я также использовал django_prometheus.models.ExportModelOperationsMixin
для своих моделей.
версия соответствующих требований:
sentry-sdk==0.14.3
django-prometheus==2.1.0
Ответ №1:
Проблема не в промежуточном программном обеспечении django-prometheus. На самом деле это из-за версии sentry-sdk. Это связанная проблема. Эта проблема была исправлена в версии sentry-sdk 0.16, поэтому я обновил версию sentry-sdk, и она была решена.