#vpn #packets #tracing #trace #ts #target #hash

ya-packet-trace

yagna中跟踪VPN数据包的实用库

1个不稳定版本

0.1.0 2023年5月23日

#22 in #ts

Download history • Rust 包仓库 212/week @ 2024-04-10 • Rust 包仓库 248/week @ 2024-04-17 • Rust 包仓库 565/week @ 2024-04-24 • Rust 包仓库 117/week @ 2024-05-01 • Rust 包仓库 271/week @ 2024-05-08 • Rust 包仓库 121/week @ 2024-05-15 • Rust 包仓库 175/week @ 2024-05-22 • Rust 包仓库 120/week @ 2024-05-29 • Rust 包仓库 147/week @ 2024-06-05 • Rust 包仓库 76/week @ 2024-06-12 • Rust 包仓库 492/week @ 2024-06-19 • Rust 包仓库 196/week @ 2024-06-26 • Rust 包仓库 422/week @ 2024-07-03 • Rust 包仓库 102/week @ 2024-07-10 • Rust 包仓库 157/week @ 2024-07-17 • Rust 包仓库 220/week @ 2024-07-24 • Rust 包仓库

918 每月下载次数
4 个crate(2个直接)中使用

GPL-3.0 许可

22KB
221

ya-packet-trace

跟踪VPN数据包的实用程序

用法

在VPN数据包流中的任何有趣点,可以这样调用宏

packet_trace!(
    "possibly-slow-subsystem-before",
    {
        // code returning AsRef<[u8]> corresponding to the packet payload
    }
);

packet_trace_maybe!(
    "whatever",
    {
        // code returning Option<AsRef<[u8]>> corresponding to the packet payload
    }
);

然后,如果编译时启用了ya-packet-traceenabled特性,将在TRACE级别打印类似以下日志到目标packet-trace

  • <HASH>是FxHash输出的16字符0填充的十六进制摘要
  • <TS>是使用以下格式字符串由chrono格式化的当前日期和时间:%Y-%m-%dT%H:%M:%S%.6f%z

依赖

~1.5MB
~22K SLoC