支持rotate和大小限制的golang log库
支持大小限制和rotate的log库,还是很有必要的,前者让你不再操心磁盘被吃光,后者让查日志更方便。
但是在golang中没有太好的实现,看过一些开源的和自行实现的,都有几个不满意的地方,比如:
没有rotate的,比如glog。
写的很复杂,并且需要复杂配置的,比如seelog。
把日志先输送到单个channel,再format写入磁盘的,没有充分利用多核多线程。
逻辑写得很诡异的,存在bug的,文件名异常长的,rotate逻辑写得不对的,比如github.com/natefinch/lumberjack、github.com/antigloss/go。
不支持不同输出的。
最后找到siddongtang大神写的,很简洁很和谐,我也提交了个pull request。之前一直用他的mysql canal,感觉他写代码还是不错的。
log库在此:https://github.com/siddontang/go/tree/master/log