项目中有使用seelog包进行日志处理,所以特意花点时间使用及通读seelog的wiki所有文档,先做笔记如下:

一. seelog主要功能

  • 设置不同日志级别(trace, debug, info, warn, error, critical, off)
  • 输出到终端(可基于日志级别设置不同颜色显示)和磁盘文件
  • 过滤指定级别日志
  • 定义多种日志输出格式
  • 根据文件或者函数进行日志输出
  • 通过 SMTP 或者 TCP 转发日志
  • 滚动日志文件(基于日期或者指定文件大小进行切割日志,并能自动删除"过期"日志文件)

二. 项目对日志的需求

  • 能设置不同日志级别(满足)
  • 能将日志输出到终端且同时输出到磁盘文件(满足)
  • 能对日志进行切割,能基于日期或者指定日志文件大小进行日志切割(满足)
  • (我的需求) 能在控制台对不同级别的日志以颜色加以区分(满足)

三. 简单实用seelog

  • 无日志配置文件的Demo
golang-seelog
 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 }
View Code

相关文章: