项目中有使用seelog包进行日志处理,所以特意花点时间使用及通读seelog的wiki所有文档,先做笔记如下:
一. seelog主要功能
- 设置不同日志级别(trace, debug, info, warn, error, critical, off)
- 输出到终端(可基于日志级别设置不同颜色显示)和磁盘文件
- 过滤指定级别日志
- 定义多种日志输出格式
- 根据文件或者函数进行日志输出
- 通过 SMTP 或者 TCP 转发日志
- 滚动日志文件(基于日期或者指定文件大小进行切割日志,并能自动删除"过期"日志文件)
二. 项目对日志的需求
- 能设置不同日志级别(满足)
- 能将日志输出到终端且同时输出到磁盘文件(满足)
- 能对日志进行切割,能基于日期或者指定日志文件大小进行日志切割(满足)
- (我的需求) 能在控制台对不同级别的日志以颜色加以区分(满足)
三. 简单实用seelog
- 无日志配置文件的Demo
1 package main 2 3 import ( 4 log "github.com/cihub/seelog" 5 ) 6 7 func main() { 8 defer log.Flush() 9 log.Info("hello world") 10 }