ODOO命令行参数
-d <database>, --database <database>
安装或者更新模块的数据库。
-i <modules>, --init <modules>
在运行 odoo server 前需要运行的模块清单(用逗号分隔)(需要-d
参数)。
-u <modules>, --update <modules>
在运行 odoo server 前需要更新的模块清单(用逗号分隔)(需要-d
参数)。
--addons-path <directories>
安装模块的目录清单(用逗号分隔)。这些目录用于搜索需要使用的模块(nb: when and why?)
--workers <count>
如果count
不等于0(缺省为0),启用多进程并安装指定数值的 HTTP 工作进程(处理 HTTP 和 RPC 请求的进程)。
备注:多进程模式只适用于基于 Unix 的操作系统。
一些限定和回收进程的参数:
--limit-request <limit>
在工作进程回收或重启之前,允许处理的请求数量,缺省是 8196。
--limit-memory-soft <limit>
每个工作进程允许使用的最大虚拟内存。如果超过这个限定值,该进程在处理完当前请求后将被终止和回收,缺省是 640MB。
--limit-memory-hard <limit>
工作进程允许使用的最大虚拟内存(强制约束),任何进程超过这个限定值,该进程将立即被终止,而不用等到当前请求处理结束。缺省是 768MB。
--limit-time-cpu <limit>
限制工作进程处理请求时允许使用 CPU 的最大 <limit> 秒数,如果超过这个限定值,该进程将被终止。缺省是 60。
--limit-time-real <limit>
限制工作进程处理请求时允许的最长 <limit> 秒数。如果超过这个限定值,该进程将被终止。与--limit-time-cpu
的不同之处在于,该参数限定的时间包括 SQL 查询。缺省是 120。
--max-cron-threads <count>
每个工作进程允许使用的最大线程数。缺省是 2 。(工作进程可以采用多线程模式和多进程模式?在多进程与多线程编程?)在多进程模式下,限定 HTTP 最大工作进程数?
-c <config>, --config <config>
提供的可选配置文件。
-s, --save
将 server 的配置信息保存到当前的配置文件。(缺省是$HOME/.odoorc
,可以通过 -c
参数指定配置文件。
--proxy-mode
通过 Werkzeug's 的代理支持 启用X-Forwarded-*
头信息。
警告:不应在反向代理场景之外启用代理模式。
--test-enable
安装模块后运行测试。
--dev <feature,feature,...,feature>
all
: 下面的所有功能都启用。xml
: 直接从 xml 文件中读取 qweb 模版信息,而不从数据库中读取。一旦数据库中的模版信息被更新,在下次更新或初始化之前,将不再从 xml 文件读取信息。reload
: 在 python 文件修改后重新启动服务(依赖使用的文本编辑器,可能检测不到修改,需要安装 watchdog 模块)。qweb
: 当一个节点包含t-debug='debugger'
时,暂停 qweb 模版的求值信息(break in the evaluation of qweb tpl )。(i)p(u)db
: 当未处理的例外错误发生时,在记录日志和返回错误之前,启动选择的 python 调试器。
数据库
-r <user>, --db_user <user>
连接到 PostgreSQL 数据库的用户名。
-w <password>, --db_password <password>
如果使用 password authentication,连接到数据库用户的口令。
--db_host <hostname>
数据库服务主机名称
localhost
Windows 平台- socket UNIX 平台
--db_port <port>
数据库服务监听端口,缺省是 5432
--db-filter <filter>
隐藏不符合 <filter>
过滤条件的数据库。过滤条件是一个 regular expression,扩展了:
%h
替换为发送请求的完全机器名。%d
替换为发送请求的主域名,不含www
(所以,域名odoo.com
和www.odoo.com
都匹配域名odoo
)
--db-template <template>
当通过数据库管理界面创建数据库时,使用指定的template database,缺省是template1
。
内置HTTP
--no-xmlrpc
不启动 HTTP 或者 long-polling 工作进程(仍然可以启动 cron workers)。
警告:如果启用
--test-enable
参数,那么该参数无效。原因是测试需要 HTTP 服务器。
--xmlrpc-interface <interface>
HTTP 服务器监听的 IP 地址,缺省是0.0.0.0
(表示所有地址)
--xmlrpc-port <port>
HTTP 服务器监听的端口,缺省是 8069。
--longpolling-port <port>
在多进程处理或 gevent 模式下,长链接的 TCP 端口,缺省是 8072。 在线程模式(缺省模式)下不使用。
日志
默认情况下,除了工作流日志(只显示warning
)外,odoo 显示 levelinfo
级别的日志信息,并且输出到标准输出设备stdout
。可以使用多种选项来控制日志的输出以及日志输出的数量。
--logfile <file>
将日志输出到指定的文件。在 Unix 平台,参见:can be managed by external log rotation programs 。
--logrotate
启用每日 log rotation, 保留30天备份。不能配置日志循环频率和保留备份数量。
--syslog
将日志输出到系统的事件记录器:syslog on unices 和 the Event Log on Windows。不可配置其他信息。
--log-db <dbname>
将日志记录到指定数据库的 ir.logging
实体 (ir_logging
表)。数据库名可以是 "current" (表示当前的 PostgreSQL 数据库),或者 a PostgreSQL URI (例如:log aggregation)。
--log-handler <handler-spec>
LOGGER:LEVEL
,启用指定LEVEL
级别的日志,例如:odoo.models:DEBUG
将记录实体中高于或等于DEBUG
级别的日志信息。
- 冒号
:
是必须的; - 记录器可以省略,使用缺省的处理器;
- 如果省略了级别信息,缺省设置为
INFO
。
可以使用多个选项配置多个日志记录器,例如:
$ odoo-bin --log-handler :DEBUG --log-handler werkzeug:CRITICAL --log-handler odoo.fields:WARNING
--log-request
为 RPC 请求启用 DEBUG 日志,等同于--log-handler=odoo.http.rpc.request:DEBUG
--log-response
为 RPC 响应启用 DEBUG 日志,等同于--log-handler=odoo.http.rpc.response:DEBUG
--log-web
为 HTTP 请求和响应启用 DEBUG 日志,等同于--log-handler=odoo.http:DEBUG
--log-sql
为 SQL 查询启用 DEBUG ,等同于--log-handler=odoo.sql_db:DEBUG
--log-level <level>
指定日志级别的快捷方式。真实级别“real levels”(critical
,error
,warn
,debug
) 可以设置odoo
和werkzeug
的记录器 (debug
只能设置odoo
)。odoo 也提供了伪级别“pseudo-levels”,可以应用到不同的日志记录器。
debug_sql
设置 SQL记录器为debug
,等同于--log-sql
debug_rpc
设置odoo
和 HTTP 请求记录器为debug
,等同于--log-level debug --log-request
debug_rpc_answer
设置odoo
和 HTTP 请求和响应记录器为debug
,等同于--log-level debug --log-request --log-response
备注:在
--log-level
和--log-handler
冲突的情况下,优先使用后者。
脚手架
脚手架是为了简化快速构建,自动创建结构框架的自动化工具(例如:创建 odoo 的模块)。它能够快速构建一个模块所需的基本内容。
odoo-bin scaffold 子命令
-t <template>
模版目录,文件通过 jinja2 传递,然后拷贝到 destination
路径。
name
要创建的模块名称,可以各种方式转换名称(例如:目录名、模块名等)。
destination
创建的模块存放的目录,缺省是当前目录。
配置文件
大多数命令行参数都可以通过一个配置文件来设定。多数情况下,他们使用像是的名称,只是将前缀“-”去掉,再将“-”替换为“_"。例如: --db-template
变为 db_template
。
一些不符合该规则的转换如下:
--db-filter 变为 dbfilter
--no-xmlrpc 对应 xmlrpc(布尔)
--smtp 对应 smtp_server
--database 对应 db_name
--debug 对应 debug_mode(布尔)
--i18n-import 和 --i18n-export 不适用配置文件
日志预设值 (所有以 --log- 开头的选项,除了 --log-handler 和 --log-db 以外)
只是将内容添加到 log_handler 项,直接在配置文件中使用。
缺省的配置文件是:$HOME/.odoorc
,可以通过 --config
参数重载。 指定--save
参数将当前的配置信息保存到配置文件。