日志打印示例
ALL 级别日志打印
下面是 ALL 级别日志打印示例。
代码如下:
import std.log.*
main(): Int64 {
let logger: SimpleLogger = SimpleLogger()
logger.level = LogLevel.ALL
logger.log(LogLevel.ALL, "============== 日志级别为 ALL================")
logger.log(LogLevel.TRACE,
"=============="+logger.level.toString()+"================")
logger.log(LogLevel.OFF, "OFF 打印出来!")
logger.log(LogLevel.ERROR, "error 打印出来!")
logger.log(LogLevel.WARN, "warn 打印出来!")
logger.log(LogLevel.INFO, "INFO 打印出来!")
logger.log(LogLevel.DEBUG, "DEBUG 打印出来!")
logger.log(LogLevel.TRACE, "trace 打印出来!")
logger.log(LogLevel.ALL, "ALL 打印出来!")
logger.flush()
0
}
运行结果如下:
2021/08/05 08:20:42.692770 ALL Logger ============== 日志级别为 ALL================
2021/08/05 08:20:42.696645 TRACE Logger ==============ALL================
2021/08/05 08:20:42.700188 ERROR Logger error 打印出来!
2021/08/05 08:20:42.703576 WARN Logger warn 打印出来!
2021/08/05 08:20:42.706920 INFO Logger INFO 打印出来!
2021/08/05 08:20:42.710268 DEBUG Logger DEBUG 打印出来!
2021/08/05 08:20:42.713602 TRACE Logger trace 打印出来!
2021/08/05 08:20:42.716940 ALL Logger ALL 打印出来!
指定日志级别和输出流
以下示例前半部分指定打印级别为 ERROR,输出流为 error_log.txt 文件,后半部分指定打印级别为 WARN,输出流为 warn_log.txt 文件。
代码如下:
import std.fs.*
import std.log.*
main(): Int64 {
let logger: SimpleLogger = SimpleLogger()
logger.level = LogLevel.ERROR
var s = File("./error_log.txt", OpenOption.CreateOrTruncate(false))
logger.setOutput(s)
logger.log(LogLevel.ERROR, "============== 日志级别为 ERROR================")
logger.log(LogLevel.ERROR,
"=============="+logger.level.toString()+"================")
logger.log(LogLevel.OFF, "OFF 打印出来!")
logger.log(LogLevel.ERROR, "error 打印出来!")
logger.log(LogLevel.WARN, "warn 打印出来!")
logger.log(LogLevel.INFO, "INFO 打印出来!")
logger.log(LogLevel.DEBUG, "DEBUG 打印出来!")
logger.log(LogLevel.TRACE, "trace 打印出来!")
logger.log(LogLevel.ALL, "ALL 打印出来!")
logger.flush()
s.close()
logger.level = LogLevel.WARN
s = File("./warn_log.txt", OpenOption.CreateOrTruncate(false))
logger.setOutput(s)
logger.log(LogLevel.WARN, "============== 日志级别为 WARN================")
logger.log(LogLevel.WARN,
"=============="+logger.level.toString()+"================")
logger.log(LogLevel.OFF, "OFF 打印出来!")
logger.log(LogLevel.ERROR, "error 打印出来!")
logger.log(LogLevel.WARN, "warn 打印出来!")
logger.log(LogLevel.INFO, "INFO 打印出来!")
logger.log(LogLevel.DEBUG, "DEBUG 打印出来!")
logger.log(LogLevel.TRACE, "trace 打印出来!")
logger.log(LogLevel.ALL, "ALL 打印出来!")
logger.flush()
s.close()
0
}
运行结果如下:
$ cat error_log.txt
2021/08/05 08:28:29.667441 ERROR Logger ============== 日志级别为 ERROR================
2021/08/05 08:28:29.671402 ERROR Logger ==============ERROR================
2021/08/05 08:28:29.674891 ERROR Logger error 打印出来!
$ cat warn_log.txt
2021/08/05 08:28:29.678978 WARN Logger ============== 日志级别为 WARN================
2021/08/05 08:28:29.682635 WARN Logger ==============WARN================
2021/08/05 08:28:29.686126 ERROR Logger error 打印出来!
2021/08/05 08:28:29.689561 WARN Logger warn 打印出来!