调试

有关其他调试资源,另请参阅:远程项目 wiki

提高日志详细程度

要提高内部日志详细程度,您可以使用 remote.log.level 偏好设置

如果您使用 mach 启动 Firefox

% ./mach run --setpref "remote.log.level=Trace" --remote-debugging-port

默认情况下,较长的日志行会被截断。要完整打印长行,您可以将 remote.log.truncate 设置为 false。

启用已发出事件的日志记录

要转储由 EventEmitter 生成的事件,包括由远程代理生成的 CDP 事件,可以使用 toolkit.dump.emit 偏好设置

% ./mach run --setpref "toolkit.dump.emit=true" --remote-debugging-port

记录观察者通知

观察者通知在整个代码中被广泛使用,有时记录这些通知以查看可用内容以及何时触发它们会很有用。

MOZ_LOG 环境变量控制 C++ 日志并使用子系统的名称以及详细程度设置。有关更多详细信息,请参阅 prlog.h

MOZ_LOG=ObserverService:5

您可以选择将日志从标准输出重定向到文件

MOZ_LOG_FILE=service.log

这将启用 LogLevel::Debug 级别信息并将所有输出放置在当前工作目录中的 service.log 文件中。