自定义Writer
接口
glog
模块实现了标准输出以及文件输出的日志内容打印。当然,开发者也可以通过自定义io.Writer
接口实现自定义的日志内容输出。io.Writer
是标准库提供的内容输出接口,其定义如下:
我们可以通过方法或者链式方法To
来实现自定义Writer
输出,开发者可以在该Writer
中实现定义的操作,也可以在其中整合其他的模块功能。
示例1,实现日志HOOK
在该示例中,我们实现了一个自定义的Writer
对象MyWriter
,在该对象实现的接口中我们对日志内容进行判断,如果出现了PANI
或者FATA
错误,那么表示是非常严重的错误,该接口将会第一时间通过HTTP
接口告知Monitor
监控服务。随后再将日志内容通过glog
模块按照配置写入到文件和标准输出。
执行后,输出结果为:
示例2,整合graylog
示例代码: