72.scala编程思想笔记——记日志
2016-01-04 22:06
162 查看
72.scala编程思想笔记——记日志
欢迎转载,转载请标明出处:http://blog.csdn.net/notbaron/article/details/50458776
源码下载连接请见第一篇笔记。
记日志就是指记录这些事件,使得应用的程序员和管理员得到另一种发现问题的工具。
可以采用Java内建的日志记录机制。例如:
package com.atomicscala
import java.util.logging._
trait Logging {
val log =Logger.getLogger(".")
log.setUseParentHandlers(false)
log.addHandler(
newFileHandler("AtomicLog.txt"))
log.addHandler(new ConsoleHandler)
log.setLevel(Level.ALL)
log.getHandlers.foreach(
_.setLevel(Level.ALL))
deferror(msg:String) = log.severe(msg)
defwarn(msg:String) = log.warning(msg)
definfo(msg:String) = log.info(msg)
defdebug(msg:String) = log.fine(msg)
deftrace(msg:String) = log.finer(msg)
}
JAVA的日志记录包中包含记录器,可以向其写入消息,还包含处理器,可以将消息记录到它们各自的介质中。
可以将日志记录级别设置为 Level.ALL,以便展示所有消息,其他级别会展示更少的消息。
使用上述代码的库,如下:
import com.atomicscala.Logging
class LoggingTest extends Logging {
info("Constructing a LoggingTest")
def f = {
trace("entering f")
// ...
trace("leaving f")
}
def g(i:Int)= {
debug(s"inside g with i: $i")
if(i <0)
error("i less than 0")
if(i >100)
warn(s"i getting high: $i")
}
}
val lt = new LoggingTest
lt.f
lt.g(0)
lt.g(-1)
lt.g(101)
运行程序后,查看AtomicLog.txt文件。
日志文件通过XML书写,目的是易于处理和组装。
欢迎转载,转载请标明出处:http://blog.csdn.net/notbaron/article/details/50458776
源码下载连接请见第一篇笔记。
记日志就是指记录这些事件,使得应用的程序员和管理员得到另一种发现问题的工具。
可以采用Java内建的日志记录机制。例如:
package com.atomicscala
import java.util.logging._
trait Logging {
val log =Logger.getLogger(".")
log.setUseParentHandlers(false)
log.addHandler(
newFileHandler("AtomicLog.txt"))
log.addHandler(new ConsoleHandler)
log.setLevel(Level.ALL)
log.getHandlers.foreach(
_.setLevel(Level.ALL))
deferror(msg:String) = log.severe(msg)
defwarn(msg:String) = log.warning(msg)
definfo(msg:String) = log.info(msg)
defdebug(msg:String) = log.fine(msg)
deftrace(msg:String) = log.finer(msg)
}
JAVA的日志记录包中包含记录器,可以向其写入消息,还包含处理器,可以将消息记录到它们各自的介质中。
可以将日志记录级别设置为 Level.ALL,以便展示所有消息,其他级别会展示更少的消息。
使用上述代码的库,如下:
import com.atomicscala.Logging
class LoggingTest extends Logging {
info("Constructing a LoggingTest")
def f = {
trace("entering f")
// ...
trace("leaving f")
}
def g(i:Int)= {
debug(s"inside g with i: $i")
if(i <0)
error("i less than 0")
if(i >100)
warn(s"i getting high: $i")
}
}
val lt = new LoggingTest
lt.f
lt.g(0)
lt.g(-1)
lt.g(101)
运行程序后,查看AtomicLog.txt文件。
日志文件通过XML书写,目的是易于处理和组装。
相关文章推荐
- 71.scala编程思想笔记——按契约设计
- (转载)java程序的几种类型
- python入门(二)
- Django更新后的配置修改
- 70.scala编程思想笔记——定制错误报告机制
- 69.scala编程思想笔记——使用Try转换异常
- 68.scala编程思想笔记——使用Option
- C++模版-重载,嵌套
- 67.scala编程思想笔记——使用Either
- 66.scala编程思想笔记——构造器和异常
- C/C++之回调函数
- phpcms V9 数据模型基类
- 65.scala编程思想笔记——用过异常进行错误处理
- 安卓捕获应用的运行时异常并保存代码
- 64.scala编程思想笔记——使用元组的模式匹配
- 63.scala编程思想笔记——引用和可修改性
- 62.scala编程思想笔记——映射表
- 61.scala编程思想笔记——集
- 60.scala编程思想笔记——将序列与zip相结合
- 59.scala编程思想笔记——列表和递归