diff --git a/src/pretix/base/views/errors.py b/src/pretix/base/views/errors.py
index dbc92e20a..f8724b33e 100644
--- a/src/pretix/base/views/errors.py
+++ b/src/pretix/base/views/errors.py
@@ -19,6 +19,7 @@
# You should have received a copy of the GNU Affero General Public License along with this program. If not, see
# .
#
+from django.conf import settings
from django.http import (
HttpResponseForbidden, HttpResponseNotFound, HttpResponseServerError,
)
@@ -27,7 +28,6 @@ from django.template import TemplateDoesNotExist, loader
from django.template.loader import get_template
from django.utils.functional import Promise
from django.utils.translation import gettext as _
-from sentry_sdk import last_event_id
from pretix.base.i18n import language
from pretix.base.middleware import get_language_from_request
@@ -106,9 +106,14 @@ def server_error(request):
template = loader.get_template('500.html')
except TemplateDoesNotExist:
return HttpResponseServerError('
Server Error (500)
', content_type='text/html')
+ if settings.SENTRY_ENABLED:
+ from sentry_sdk import last_event_id
+ sentry_id = last_event_id()
+ else:
+ sentry_id = None
r = HttpResponseServerError(template.render({
'request': request,
- 'sentry_event_id': last_event_id(),
+ 'sentry_event_id': sentry_id,
}))
r.xframe_options_exempt = True
return r