#tracing #macro #capturing #assert #events #capture #fields

tracing-assert-macros

用于捕获跟踪日志的宏

3 个版本

0.1.4 2023年2月21日
0.1.3 2023年2月21日

#2438 in Rust 模式

MIT/Apache

9KB
114

tracing-assert-macros

tracing_capture_event_fields!

此宏运行给定的代码块,并仅返回每个事件生成的 Field/Value 元组。

这是一种快速检查事件携带的自定义数据的方法。

示例用法

use tracing_assert_macros::tracing_capture_event_fields;
use tracing;

// Given
fn method_under_test() {
    tracing::trace!(message = "something important!");
    tracing::trace!(message = "something else important!");
}
let expected_events: Vec<Vec<(String, String) > > = vec![
    vec![("message".into(), "something important!".into())],
    vec![("message".into(), "something else important!".into())],
];

// When capturing the event field/values into the `events` variable
let events = tracing_capture_event_fields!({
    method_under_test();
});

// Then
assert_eq!(events, expected_events);

依赖项

~1.5MB
~23K SLoC