LOG&print 输出映射到其他 UART, LOG 等级设置
当程序运行出现问题时,日志记录是一种非常有用的方法,它可以帮助我们追踪和
定位程序出现的问题,方便开发者分析解决问题。在
QuecPython
中,可以使用
log
模
块来记录程序运行中的信息,但
QuecPython
输出的
log
信息基本都会打印在
QPYcom
的交互界面中,那么当我们想要输出到其他的串口时,又该怎么处理呢?
本次小Q带大
家如何把 log 输出映射到其他 UART 串口和 log 的等级设置。
一、QuecPython_LOG 输出映射到其他 UART
import
log
log.basicConfig(
level
=log.INFO)
#设置日志输出级别,默认为 log.INFO。
Testlog = log.getLogger(
"TestLog"
)
#获取 log 对象,对象支持输出不同等级的
log 信息。
# 设置输出到其他串口口
from
machine
import
UART
uart = UART(UART.UART0,
115200
,
8
,
0
,
1
,
0
)
# 创建 uart 对象
log.set_output(uart)
#设置日志输出的位置,目前只支持 uart 和 usys.stdout
Testlog.info(
"this is a Test log"
)
# 会输出带对应的 uart 口
# 从 uart 口切换成交互口输出
import
usys
log.set_output(usys.stdout)
#设置日志输出的位置,目前只支持 uart 和
usys.stdout
Testlog.info(
"this is a Test log"
)
# 会输出到交互口
二、print 输出映射到到其他 UART
from machine import UART
uart = UART(UART.UART1, 115200, 8, 0, 1, 0)
# 创建 uart 对象
print('this is print log test',file=uart)
# file:数据输出位置
三、 LOG 等级设置
(1)日志级别
log.DEBUG
常量,用来标识 LOG 等级,最详细的日志信息,通常只在开发和调试时使用。
log.INFO
常量,用来标识 LOG 等级,确认一切按预期运行。
log.WARNING
常量,用来标识 LOG 等级,表明发生了一些意外,或者指示可能出现问题的情况,但仍然
可以继续执行。
log.ERROR
常量,用来标识 LOG 等级,由于更严重的问题,应用程序已不能执行某些功能。
log.CRITICAL
常量,用来标识 LOG 等级,指出应用程序中的严重错误,可能导致应用程序停止运行。
log 等级排名:
log.CRITICAL > log.ERROR > log.WARNING > log.INF
O
>
log.DEBUG
(2)日志输出
import
log
# 设置日志输出级别,默认为 log.INFO,系统只会输出 level 数值大于或等于该
level 的的日志结果。
log.basicConfig(
level
=log.DEBUG)
# 获取 logger 对象,如果不指定 name 则返回 root 对象,多次使用相同的 name 调用
getLogger 方法返回同一个 logger 对象
Testlog = log.getLogger(
"Quec"
)
Testlog.error(
"Test error message!!"
)
Testlog.debug(
"Test debug message!!"
)
Testlog.critical(
"Test critical message!!"
)
Testlog.info(
"Test info message!!"
)
Testlog.warning(
"Test warning message!!"
)
附言:
以上就是本次 QuecPython 的 log 日志输出功能介绍,各位小伙伴赶紧来试试吧,如有
任何疑问,欢迎各位留言进行探讨和交流