调试 Weblate

缺陷的症状可以是应用崩溃或行为错误。欢迎您搜集任何这样的问题的信息,并将其提交给 issue tracker

调试模式

打开调试模式将在浏览器中显示例外。这在 web 界面上调试问题非常有用,但不适于生产环境,因为这回导致性能问题,并泄露私有数据。

Weblate 日志

Weblate 可以生成关于后台什么在运行的具体日志。在默认配置中,它使用 syslog,并使日志出现在 /var/log/messages/var/log/syslog 中(依赖于您的 syslog 守护程序配置)。

Celery 进程(请参见 使用 Celery 的后台任务)通常也产生自己的日志。示例的系统范围的设置被记录到 /var/log/celery/ 下的几个日志文件中。

Docker 容器将其输入记入日志(如同 Docker 世界中通常的那样),因此可以使用 docker-compose logs 来查看日志。

参见

配置的例子 包含 LOGGING 配置。

不处理后台任务

很多事情发生在后台 Celery workers中。像发送电子邮件或删除组件这样的事情不起作用时,可能会是它有问题。

在那种情况下需要检查的事情:

  • 检查 Celery 是否正在运行,见: ref:celery

  • 或者在 管理界面 中或者使用 using celery_queues 检查 Celery 队列状态

  • 在 Celery 日志中查找错误(请参见 Weblate 日志

不接收来自 Weblate 的电子邮件

可以通过使用 sendtestemail 管理命令(关于在不同环境中如何调用它的指示说明请参见 调用管理命令 )或 Tools 标签下的 管理界面 来验证向外发送的电子邮件是否正常工作。

这直接发送电子邮件,所以这确定了您的SMTP配置是正确的(请参见 配置电子邮件发件箱)。然而来自 Weblate 的多数电子邮件在后台发送,并且也会有 Celery 相关的问题,请参阅 不处理后台任务 来调试。

分析应用的崩溃

在应用崩溃的情况下,尽可能多地收集与崩溃有关的信息是非常有用的。最容易的方式是使用第三方服务来实现,这些服务会自动收集这样的信息。可以在 :ref:`collecting-errors`找到如何设置的信息。

无报告的故障

很多任务写在到 Celery 进行后台处理。故障不显示在用户界面上,但出现在 Celery 的日志中。配置 收集错误报告 会帮助您更容易地注意到这样的故障。

性能问题

Weblate 在这样的情形性能很差的情况下,请收集显示问题的相关日志,以及有助于找到从哪里改进代码的任何事物。

如果有些请求在没有任何提示的情况下花费了很长时间,你可能想要安装 dogslow,附加参数 收集错误报告 并在错误收集工具中获取精确和详细的回溯信息。