#错误 #追踪 #调试 #管理 #回溯 #项目 #结构化

traceback-error

这个crate旨在使错误处理和追踪更加容易。

10个发布版本

0.1.9 2023年9月14日
0.1.8 2023年9月12日

#633 in 开发工具

Download history 15/week @ 2024-04-02 186/week @ 2024-04-09 3/week @ 2024-04-23 9/week @ 2024-05-07 7/week @ 2024-05-14

每月 53次下载

MIT/Apache

40KB
497 代码行

traceback-error

traceback-error是一个用于高效错误处理和回溯功能的Rust crate。它简化了Rust项目中的错误跟踪、序列化和处理,使其更容易管理和诊断错误。

特性

高效错误处理:traceback-error提供了一种结构化的错误处理方式,允许您有效地跟踪和管理错误。

回溯功能:轻松创建包含错误详细信息、错误位置和相关上下文的错误回溯。

序列化:将错误序列化为JSON以进行存储或调试。

安装

将此crate添加到您的Cargo.toml中

[dependencies]
traceback-error = "0.1.9"

使用

use traceback_error::{serde_json::json, traceback, TracebackError};

fn main() {
    // Should an error occur, handle it
    if let Err(e) = do_something_that_might_fail() {
        // Handle the error here
        // You can also log or serialize it
        println!("Error: {}", e);
        // Or continue tracing
        traceback!(err e, "The thing that might fail failed");
    }
}

fn do_something_that_might_fail() -> Result<(), TracebackError> {
    // Your code here
    // Use the traceback! macro to create and handle errors
    Err(traceback!("Something went wrong").with_extra_data(json!({
        "details": "Additional information about the error"
    })))
}

文档

文档可在docs.rs找到

贡献

欢迎贡献!请随意在GitHub仓库上打开问题或拉取请求。该项目仍处于非常早期的发展阶段,尚未建立适当的贡献指南

许可

此crate采用MIT许可证Apache许可证2.0版双重许可。您在使用此crate时可以选择这两种许可证中的任何一种。请参阅LICENSE-MITLICENSE-APACHE文件,以获取许可证的完整文本。

依赖

~1.7–2.9MB
~54K SLoC