我有一个用 Rust 编写的 WebAssembly 模块,它log在开发过程中通过crate执行日志记录以用于调试目的。我注意到,即使我没有配置记录器,对内部log函数的格式设置和调用仍保留在生成的 WebAssembly 模块中。这会浪费字节,因为这些函数的输出永远不会被使用/显示。
有没有办法静态禁用日志记录,而不必删除代码中的日志宏调用?此外,有没有办法只在发布版本中禁用它?
是的; 的log板条箱提供特征的标志在允许记录到在编译时向上被静态禁用,以一定的水平。
如果您想完全禁用发布版本中的所有登录,但在调试版本中保持正常登录,请更改您的条目Cargo.toml以包含如下release_max_level_off功能:
log = { version = "0.4", features = ["release_max_level_off"] }
Run Code Online (Sandbox Code Playgroud)
这将导致所有对日志函数的调用从生成的二进制文件中删除,并通过死代码消除来获取任何相关的格式化代码。
| 归档时间: |
|
| 查看次数: |
910 次 |
| 最近记录: |