#logging #console #console-log #log #logger

soulog

一个用于优雅、简洁和丰富多彩的控制台日志和错误处理的库

6 个稳定版本

1.2.2 2024年8月11日
1.2.1 2023年10月5日
1.2.0 2023年9月10日
1.1.0 2023年8月24日

#407 in Rust 模式

Download history 2/week @ 2024-07-01 69/week @ 2024-08-05 46/week @ 2024-08-12

每月115 次下载
用于 diary-cli

MIT/Apache

17KB
213

soulog

一个用于优雅、简洁和丰富多彩的控制台日志和错误处理的库。

彩色打印


一些用于彩色打印到控制台的工具。

  • 支持的颜色

    • 粉红色
    • 白色
    • 蓝色
    • 绿色
    • 青色
    • 红色
    • 黑色
    • 黄色
  • 用法

    use soulog::*;
    
    // The macro is pretty simple, it's just a list of strings and you have to surround each string with a colour (in lowercase)
    // If you don't want a colour, then use `none` for the default colour of the console.
    let colourful_text = colour_format![blue("["), none("Example"), blue("] "), none("Here is an example body!")];
    
    println!("{}", colourful_text); // Prints the colourful text to screen
    

日志记录器


  • 一个结构体,用于确定如何处理日志和错误,以及如何处理它们。
  • 小型应用程序的默认日志记录器是 soulog::sbl::PanicLogger,在错误时引发恐慌

日志记录


当你想要记录一个事件或只是通过控制台向用户更新时

use soulog::*;

pub fn process(mut logger: impl Logger) {
    // First part is the logger surrounded by parenthesis, this is the destination the log is going to
    // The second part is the origin of the log, the function is called `process` so it should be `Process`
    // The third part is the log body, it should be formatted like in a `format!()` macro
    log!((logger) Process("Example log of a number: {}", 12));
    
    // You can also have error-like logs such as inconvenience logs
    log!((logger.error) Process("Example inconvenience log") as Inconvenience);
}

没有运行时依赖