Ответ 1
Если вы используете SENTRY ON-PREMISE, это может произойти, если рабочие процессы не запущены или ваша очередь не резервируется. В официальных документах говорится:
Sentry поставляется со встроенной очередью для обработки задач в более асинхронная мода. Например, когда происходит событие, а не немедленно записывая его в базу данных, он отправляет задание в очередь, поэтому что запрос может быть возвращен сразу, а фон рабочие обрабатывают фактическое сохранение этих данных.
И обратите внимание, что он полагается на библиотеку сельдерея для управления рабочими. Таким образом, запуск сотрудника из CLI может решить эту проблему:
$ sentry celery worker
Рекомендуется использовать это как услугу, например, конфигурацию с супервизором:
[program:sentry-worker]
directory=/www/sentry/
command=/www/sentry/bin/sentry celery worker -l WARNING
autostart=true
autorestart=true
redirect_stderr=true
killasgroup=true
Sentry поддерживает два основных брокера, которые могут быть скорректированы в зависимости от вашей рабочей нагрузки:
RabbitMQ and `Redis`
.
Redis
Брокер по умолчанию - Redis и будет работать в большинстве ситуаций. Основное ограничение на использование Redis заключается в том, что все ожидающие работы должны вписываться в память.
BROKER_URL = "redis://localhost:6379/0"
Если для вашего подключения Redis требуется пароль для аутентификации, вам необходимо использовать следующий формат:
BROKER_URL = "redis://:[email protected]:6379/0"
RabbitMQ
Если вы работаете с большой нагрузкой или имеете проблемы с установкой ожидающей рабочей нагрузки в памяти, тогда RabbitMQ является идеальным кандидатом для поддержки рабочих Sentrys.
BROKER_URL = "amqp://guest:[email protected]:5672/sentry"