Odoo:如何在服务器代码中放置调试行以便在 /var/log/odoo 中查看

Odoo: How to place debug lines in server code for viewing in /var/log/odoo

我做了以下事情:

  1. /usr/lib/python2.7/dist-packages/openerp/models.py
  2. 中放置了一些打印调试行
  3. 通过sudo service odoo restart
  4. 重启Odoo服务器
  5. 登录到 Odoo 服务器并执行将在步骤 1 中触发调试行的操作。

但是我的打印调试行没有出现在 /var/log/odoo/odoo-server.log

我是否遗漏了上述任何步骤?通常如何在 Odoo 中调试 Python 代码?谢谢!

找到以下内容,但还没有尝试过。我会报告我的发现并确认。

https://www.odoo.com/forum/help-1/question/how-to-debug-python-code-in-open-erp-28046

1- 在你的 python 文件中你可以定义一个 _logger

import logging
_logger = logging.getLogger(__name__)

class MyClass(models.Model):

    # [...]

    _logger.debug("Debug message")

在你的配置文件中修改这个属性

log_level = debug

重新启动服务,消息将打印在您的日志文件中:

2015-08-23 17:32:05,401 2249 DEBUG ? openerp.service.server: Debug message

2 - 您可以使用 pudb 设置断点,如下所示:

class MyClass(models.Model):

    # [...]

    import pudb;pu.db # This will create a breakpoint