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终端下调试程序时,有时需要输出大量信息.若能控制字体的颜色和显示方式,可使输出 ...
随机推荐
- Semantic Kernel/C#:一种通用的Function Calling方法,文末附经测试可用的大模型
Funcion Calling介绍 函数调用允许您将模型如gpt-4o与外部工具和系统连接起来.这对于许多事情都很有用,比如为AI助手赋能,或者在你的应用程序与模型之间建立深度集成. 如果您了解或者使 ...
- Docker高级篇:实战Redis集群!从3主3从变为4主4从
通过前面两篇,我们学会了三主三从的Redis集群搭建及主从容错切换迁移,随着业务增加,可能会有主从扩容的,所以,本文我们来实战主从扩容 PS本系列:<Docker学习系列>教程已经发布的内 ...
- Qemu - 介绍
Ref: QEMU支持3种运行模式 -- 理解 https://www.minitool.com/partition-disk/qemu-for-windows.html
- 利用CSS 实现环形百分比进度展示
先看效果图: UI设计了这样的效果,已读人数占总人数的百分比,环形展示. 这里可以用echarts图表,也可以用css实现,因为我是在小程序环境下,考虑到包大小体积,采用了css实现. 核心就是一行代 ...
- hexo使用小技巧
1.在博客中加入图片 使用语法 {% asset_img 1.jpg %} 这样hexo会自动渲染1.jpg.,然后1.jpg的位置需要放在同文件名的文件夹中,比如这篇博客叫hexo使用小技巧,那么这 ...
- 这款PDF解析工具,精准触达大模型问答应用的需要
过去的一年,是大语言模型快速发展的一年.大模型强大的语言理解能力,逐渐让用户习惯了将各类文章丢给大模型,让它来帮忙总结提炼.从产品角度看,这是一次10倍体验的飞跃,意味着巨大的市场机会.也因此,市面上 ...
- Angular 18+ 高级教程 – Component 组件 の Pipe 管道
介绍 Pipe 类似于 Template Syntax,它的用途是 transform value for display. 参考: Docs – Understanding Pipes DatePi ...
- CSS & JS Effect – 画三角形 Triangle
前言 画三角形有什么用? 可以做这样的 Design 参考 5 Ways To Create A Triangle With CSS Border Triangle 用 border 做 三角形应该是 ...
- 【渗透测试】ATT&CK靶场一,phpmyadmin,域渗透,内网横向移动攻略
前言 VulnStack,作为红日安全团队匠心打造的知识平台,其独特优势在于全面模拟了国内企业的实际业务场景,涵盖了CMS.漏洞管理及域管理等核心要素.这一设计理念源于红日安全团队对ATT&C ...
- Kubernetes Pod(Pod Hook?Pod 健康检查?Pod 资源配置?)(十八)
一.Pod Hook 我们知道 Pod 是 Kubernetes 集群中的最小单元,而 Pod 是由容器组成的,所以在讨论 Pod 的生命周期的时候我们可以先来讨论下容器的生命周期.实际上 Kuber ...