anyhow
是一个 Rust 库,用于简化错误处理。要使用 anyhow
记录错误,首先需要在你的项目中添加它作为依赖。在你的 Cargo.toml
文件中添加以下代码:
[dependencies] anyhow = "1"
然后,你可以在代码中使用 anyhow
来记录错误。这里有一个简单的例子:
use anyhow::{Context, Result}; fn main() -> Result<()> { let value = https://www.yisu.com/ask/42;"value must not be zero")); } println!("Value is: {}", value); Ok(()) }
在这个例子中,我们使用 anyhow!
宏来创建一个错误。当 value
等于 0 时,我们返回一个包含错误信息的 Err
变量。Context
可以用于添加更多关于错误的上下文信息。
如果你想在日志中记录错误,可以使用 log
和 env_logger
库。首先,将它们添加到你的 Cargo.toml
文件中:
[dependencies] anyhow = "1" log = "0.4" env_logger = "0.9"
然后,在你的代码中设置日志记录器并使用 anyhow
记录错误:
use anyhow::{Context, Result}; use log::{info, error}; use env_logger::Env; fn main() -> Result<()> { env_logger::from_env(Env::default().default_filter_or("info")).init(); let value = https://www.yisu.com/ask/42;"value must not be zero"); return Err(anyhow!("value must not be zero")); } info!("Value is: {}", value); Ok(()) }
在这个例子中,我们使用 log::error!
宏来记录错误信息。当 value
等于 0 时,我们记录错误信息并返回一个包含错误信息的 Err
变量。