Отладка Weblate¶
Ошибки могут проявлять себя в том, что приложение падает или как-либо ведёт себя некорректно. Мы будем рады, если вы соберёте информацию о таких проблемах и передадите её в нашу систему отслеживания проблем.
Режим отладки¶
Включение режима отладки приведёт к тому, что исключения будут отображаться прямо в веб-браузере. Это полезно при отладке проблем в веб-интерфейсе, но для рабочей системы применять данный режим не следует, поскольку он отражается на производительности не лучшим образом и может привести к утечке конфиденциальных данных.
В производственной среде используйте ADMINS, чтобы получать электронные письма с отчётами об ошибках, или настройте сбор ошибок с помощью сторонней службы.
Журналы Weblate¶
Weblate может вести детализированные журналы того, что происходит на фоне. С настройками по умолчанию он использует syslog в результате чего файл журнала появляется в /var/log/messages или в /var/log/syslog (в зависимости от настроек вашего демона syslog).
Процесс Celery (смотреть раздел Фоновые задачи с использованием Celery) обычно также ведёт свои собственные журналы. Скажем, в примере с установкой Celery в качестве системного сервиса журналы будут записываться в несколько файлов в каталоге /var/log/celery/.
Контейнеры Docker записывают свои выходные данные (как обычно в мире Docker), поэтому вы можете просмотреть журналы, используя docker compose logs. Вы можете получить более подробные журналы, изменив WEBLATE_LOGLEVEL.
См. также
Пример файла настроек содержит конфигурацию LOGGING.
Не обрабатываются фоновые задачи¶
Многие вещи выполняются обработчиками Celery в фоновом режиме. Если такие вещи, как рассылка писем или удаление компонентов, не работают, возможно, проблема связана с ними.
В таком случае следует:
Проверьте, запущен ли процесс Celery, смотрите раздел Фоновые задачи с использованием Celery
Проверьте состояние очереди Celery либо в Интерфейс управления, либо с помощью
celery_queuesПосмотрите в журналах Celery на наличие ошибок (смотреть раздел Журналы Weblate)
Не доходит электронная почта от Weblate¶
Вы можете проверить, правильно ли работает исходящая электронная почта, с помощью команды управления sendtestemail (см. Вызов команд управления для инструкций по её вызову в разных средах) или с помощью Интерфейс управления на вкладке Tools.
Они отправляют электронные письма напрямую, поэтому это подтверждает правильность вашей конфигурации SMTP (см. Настройка исходящей почты). Однако большинство писем от Weblate отправляются в фоновом режиме, и там также могут быть проблемы с Celery; пожалуйста, обратитесь к Не обрабатываются фоновые задачи для их отладки.
Анализ падений программы¶
Если приложение падает, то будет полезно собрать об этом падении столько информации, сколько возможно. Этого можно достичь с помощью сторонних сервисов, которые могут собирать такую информацию автоматически. Вы можете почитать о том, как это сделать, в разделе «Сбор отчётов об ошибках и мониторинг производительности».
Ошибки без оповещения¶
Многие задачи выгружаются в Celery для фоновой обработки. Сбои не отображаются в пользовательском интерфейсе, но появляются в журналах Celery. Настройка Сбор отчётов об ошибках и мониторинг производительности помогает легче замечать такие сбои.
Проблемы с производительностью¶
Если в каких-то сценариях Weblate показывает недостаточную производительность, то соберите журналы, которые демонстрируют проблему, а также всё, что поможет выяснить, как и в каком месте можно улучшить код.
См. Сбор отчётов об ошибках и мониторинг производительности для получения информации о настройке Sentry, которая может предоставить полезную информацию о плохо работающих операциях.
Если низкая производительность связана с базой данных, вы также можете включить регистрацию всех запросов к базе данных, используя следующую конфигурацию после включения DEBUG:
LOGGING["loggers"]["django.db.backends"] = {"handlers": ["console"], "level": "DEBUG"}