rust 终端输出 debug 信息
配置方法
- 将
env_loggerlog添加到 Cargo.toml :
打开 Cargo.toml 文件并在 [dependencies] 部分下添加env_loggerlog。
[package]
name = "helloworld"
version = "0.1.0"
edition = "2021" [dependencies]
log = "0.4"
env_logger = "0.10"
- 导入
env_loggerlogcrate:
确保将env_loggerlogcrate导入到 main.rs 或 lib.rs 文件中。
use env_logger;
use log::debug;
- 如果终端没有输出,可能是日志级别配置的问题。默认情况下,
env_logger可能不显示调试级别日志。需要设置适当的环境变量来配置日志级别。
在 Linux 和 macOS 上:
export RUST_LOG=debug
在 Windows 上(命令提示符):
set RUST_LOG=debug
在 Windows 上(PowerShell):
$env:RUST_LOG="debug"
完整示例
[package]
name = "helloworld"
version = "0.1.0"
edition = "2021"
[dependencies]
rand = "0.8.5"
log = "0.4"
env_logger = "0.10"
#[warn(unused_imports)]
use log::{debug, error, log_enabled, info, Level};
use env_logger;
fn process_serial_data(n: usize, serial_buf: &[u8]) {
// Log the number of bytes received and the data in hexadecimal format
debug!("rx: {}, {:02X?}", n, &serial_buf[..n]);
// Other processing logic...
}
fn main() {
// Initialize the logger
env_logger::init();
debug!("this is a debug {}", "message");
// error!("this is printed by default");
// Example data
let n = 4;
let serial_buf = vec![0xDE, 0xAD, 0xBE, 0xEF, 0x00, 0x01];
// Process the data
process_serial_data(n, &serial_buf);
}
输出
Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.08s
Running `target/debug/helloworld`
[2024-06-26T01:29:31Z DEBUG helloworld] this is a debug message
[2024-06-26T01:29:31Z DEBUG helloworld] rx: 4, [DE, AD, BE, EF]
rust 终端输出 debug 信息的更多相关文章
- cocos2d-x 输出debug信息
cocos2d-x 输出debug信息 在Classes目录下添加文件AppDef.h #ifndef _APP_DEF_H_#define _APP_DEF_H_ #include <an ...
- C#在代码中编写输出debug信息-类Debug的使用
文章:C# 的两种debug 方法 文章:C#跟踪和调试程序-Debug类使用 很全面的文章,可以仔细学习使用下. 文章:C#调试类 没有仔细看. 关键字:Debug类和Trace类有什么区别? 微软 ...
- 【技巧】Java工程中的Debug信息分级输出接口
也许本文的标题你们没咋看懂.但是,本文将带大家领略输出调试的威力. 灵感来源 说到灵感,其实是源于笔者在修复服务器的ssh故障时的一个发现. 这个学期初,同袍(容我来一波广告产品页面,同袍官网)原服务 ...
- 【技巧】Java工程中的Debug信息分级输出接口及部署模式
也许本文的标题你们没咋看懂.但是,本文将带大家领略输出调试的威力. 灵感来源 说到灵感,其实是源于笔者在修复服务器的ssh故障时的一个发现. 这个学期初,同袍(容我来一波广告产品页面,同袍官网)原服务 ...
- log4j中Spring控制台输出Debug级信息过多解决方法
log4j中Spring控制台输出Debug级信息过多解决方法 >>>>>>>>>>>>>>>>> ...
- 在VC6的debug框里面输出版权信息
在VC6的debug框里面输出版权信息,效果如下: 原理是: 新建一个批处理文档:如:"info.bat",放置到工程目录下[和dsw同级] @echo ===本程序作者是不要呵呵 ...
- C# Debug和Trace:输出调试信息
在 C# 语言中允许在程序运行时输出程序的调试信息,类似于使用 Console.WriteLine 的方式向控制台输出信息.所谓调试信息是程序员在程序运行时需要获取的程序运行的过程,以便程序员更好地解 ...
- 使用动态输出打印内核的DEBUG信息
简介 printk()是很多嵌入式开发者喜欢用的调试手段之一,但是,使用printk()每次都要重新编译内核,很不方便.使用动态输出在不需要重新编译内核的情况下,方便的打印出内核的debug信息. 要 ...
- js操作dom---创建一个域来输出调试信息
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...
- 通过printf设置Linux终端输出的颜色和显示方式
转载自:http://www.cnblogs.com/clover-toeic/p/4031618.html 在Linux终端下调试程序时,有时需要输出大量信息.若能控制字体的颜色和显示方式,可使输出 ...
随机推荐
- Java 读取 IP 地址
使用 InetAddress 类 可以利用 Java 自带的 InetAddress 类来检查一个字符串是否为有效的 IP 地址: import java.net.InetAddress; // 导入 ...
- 主观与客观,破除DDD凭经验魔咒
本文书接上回<学习真DDD的最佳路径>,关注公众号(老肖想当外语大佬)获取信息: 最新文章更新: DDD框架源码(.NET.Java双平台): 加群畅聊,建模分析.技术实现交流: 视频和直 ...
- MS SQL的ROUND函数用来数值的四舍五入
MS SQL的ROUND函数用来数值的四舍五入 MS SQL要进行数值的四舍五入,有一好用的函数ROUND. 语法 ROUND ( numeric_expression , length [ ,fun ...
- 鸿蒙系统(HarmonyOS)全局弹窗实现
全局弹窗相对于自定义弹窗有以下优点: 封装更彻底,一行代码就能调用 跟组件耦合度低,只需要传入组件的UIContext对象,不需要跟自定义弹窗一样需要在组件内部实例化CustomDialogContr ...
- CCIA数安委等组织发起“个人信息保护影响评估专题工作”,合合信息首批入选试点
近期,"个人信息保护影响评估专题工作"(简称"PIA专题工作")试点评估结果正式发布.PIA专题工作组由中国电子技术标准化研究院.中国信息通信院等单位的法律与技 ...
- SQL Server – 基本操作 Table 和 Column
前言 日常都是用 EF Core 来管理 Database, 偶尔也用 Management Studio, 就是很少手写 Command. 虽然网上一拉就有很多, 但是每次写单侧都要到处找还是挺烦的 ...
- 安全 – 常见 Web 攻击
前言 最近在研究 WAF, 顺便记入一下常见的 Web 攻击. SQL Injection SQL injection 是指程序员直接拿 client input, 拼接到 SQL query 中. ...
- 2.2.2 PyTorch 2.0 GPU NVIDIA运行库的安装 ——CUDA+cuDNN安装教程
参考文章: https://blog.csdn.net/mbdong/article/details/121769951 CUDA download: https://developer.nvidia ...
- Git常用命令,分支合并与管理
Git 自我感觉最大的优点是对版本库和分支的管理 各自的电脑都对项目保存一份版本,分支合并也极其方便. 而且Git的目录操作命令跟Linux一样,使用起来还是非常顺手的. Git详解 Git 常用命令 ...
- Haproxy详解以及基于Haproxy的高可用实战
1.Haproxy与Keepalived VRRP 介绍 软件:haproxy 主要是做负载均衡的7层,也可以做4层负载均衡 apache也可以做7层负载均衡,但是很麻烦.实际工作中没有人用. ngi ...