Logger类用于日志记录消息。记录器实例命名,它们由LogManager管理。
Logger实例将将消息的日志记录级别与其日志记录级别进行比较。如果消息的日志记录级别会满足或超过记录器的日志记录级别,则日志消息将传递给注册处理程序。默认情况下,日志消息也将传递给其父的处理程序。
处理程序是“发出”日志消息到外部世界的原因。记录器决定处理程序是否应遵循日志消息。
日志记录类位于Matlab包“日志记录”中。您需要将+记录Directoy放置在路径的某个位置。也就是说,+日志记录Directoy存在的目录应该在MATLAB路径中 - 而不是+日志记录目录本身。
我建议在Java日志记录和阅读有关Logger和LogManager的一点上进行谷歌。我认为它可能会做得更好试图解释:)。
示例代码:
导入日志记录。*
%---基本控制台---
%获取全局logManager
logmanager = logmanager.getLogManager();
%将记录器实例添加到此脚本
logger = logger.getlogger('testscript');
logger.setLevel(级别);
logger.info('嗨,这是信息!');
logger.warning('嗨,这是警告!');
%副作用是关闭所有处理程序
logmanager.resetall();
%---带有文件的基本控制台---
%获取全局logManager
logmanager = logmanager.getLogManager();
%将文件处理程序添加到根记录器
filehandler = filehandler('./ basic-tootfile handler.log');
filehandler.setLevel(级别);
rootlogger = logmanager.getlogger('');
rootlogger.addhandler(filehandler);
%将记录器实例添加到此脚本
%将使用堆栈来生成记录器的名称,因为没有提供名称
logger = logger.getLogger();
logger.setLevel(级别);
logger.info('嗨,这是信息!');
logger.warning('嗨,这是警告!');
%副作用是关闭所有处理程序
logmanager.resetall();
马修Spaethe(2021年)。MATLAB伐木工具(//www.tatmou.com/matlabcentral/fileexchange/42078-matlab-logging-facility),matlab -logging-facility),Matlab中央文件兑换。检索到。
嗯......系统看起来非常方便和乐趣。
我唯一不明白的是如何使其简单。
就像......当然,我可以自己定义一个函数:
函数dumb_log(String)
导入日志记录*;
logger = logging.logger.getLogger('');
logger.all(String);
但要诚实,肩负这样的功能,我看起来不是很聪明的想法。
是否没有内在的功能自然这样做?