Отладка 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.

См. также

Пример файла настроек contains LOGGING configuration.

Не обрабатываются фоновые задачи

Многие вещи выполняются обработчиками Celery в фоновом режиме. Если такие вещи, как рассылка писем или удаление компонентов, не работают, возможно, проблема связана с ними.

В таком случае следует:

Не доходит электронная почта от Weblate

You can verify whether outgoing e-mail is working correctly by using the sendtestemail management command (see Вызов команд управления for instructions on how to invoke it in different environments) or by using Интерфейс управления under the Tools tab.

These send e-mails directly, so this verifies that your SMTP configuration is correct (see Настройка исходящей почты). Most of the e-mails from Weblate are however sent in the background and there might be some issues with Celery involved as well, please see Не обрабатываются фоновые задачи for debugging that.

Анализ падений программы

Если приложение падает, то будет полезно собрать об этом падении столько информации, сколько возможно. Этого можно достичь с помощью сторонних сервисов, которые могут собирать такую информацию автоматически. Вы можете почитать о том, как это сделать, в разделе «Сбор отчётов об ошибках и мониторинг производительности».

Ошибки без оповещения

Lots of tasks are offloaded to Celery for background processing. Failures are not shown in the user interface, but appear in the Celery logs. Configuring Сбор отчётов об ошибках и мониторинг производительности helps you to notice such failures easier.

Проблемы с производительностью

Если в каких-то сценариях Weblate показывает недостаточную производительность, то соберите журналы, которые демонстрируют проблему, а также всё, что поможет выяснить, как и в каком месте можно улучшить код.

See Сбор отчётов об ошибках и мониторинг производительности for information on setting up Sentry which can provide useful insights on badly performing operations.

Если низкая производительность связана с базой данных, вы также можете включить регистрацию всех запросов к базе данных, используя следующую конфигурацию после включения DEBUG:

LOGGING["loggers"]["django.db.backends"] = {"handlers": ["console"], "level": "DEBUG"}