如何在dartlang(Dartium或命令行)中查看Logger的输出

时间:2013-02-12 17:34:44

标签: logging dart

我希望能够从可能是Web应用程序或命令行应用程序一部分的程序包中进行调试以进行调试

目前我使用

print('some text');

但我无法在运行时控制打印的内容(DEBUG,INFO,...) 虽然我习惯在java中使用java.util.logging.Logger,但我无法在web或命令行应用程序中找到在dart日志包中使用Logger类的方法。

Logger logger = new Logger('test');
logger.info('some text');

上面的简单代码编译得很好,但我无法在Dartium的控制台或DartEditor的输出窗格中看到任何输出。

有没有人成功使用过它(看一些文字)?

2 个答案:

答案 0 :(得分:8)

在我的Dart Bat-belt中,我保留了这样的功能:

void printLogRecord(LogRecord r) {
  print("${r.loggerName} ${r.level} ${r.message}");
}

然后我将它添加到Logger,通常是根记录器:

Logger.root.level = Level.FINE;
Logger.root.onRecord.listen(printLogRecord);

答案 1 :(得分:1)

使用最新的m4版本,这是适用于我的API:

Logger.root.level = Level.FINEST;
Logger.root.onRecord.listen((LogRecord r) {
  window.console.log('${r.loggerName}(${r.level}): ${r.message}');
});