提交 53a9224a authored 作者: 赵雪如's avatar 赵雪如

日志补充

上级 a4a93a81
package log
import (
"context"
"fmt"
"github.com/gogf/gf/os/glog"
"github.com/gogf/gf/text/gregex"
)
type MyWriter struct {
logger *glog.Logger
}
func init() {
glog.SetWriter(&MyWriter{
logger: glog.New(),
})
}
func (w *MyWriter)Write(p []byte)(n int, err error) {
s := string(p)
if gregex.IsMatchString(`PANI|FATA|ERRO`, s) {
fmt.Println("SERIOUS ISSUE OCCURRED!! I'd better tell monitor in first time!")
//ghttp.PostContent("http://monitor.mydomain.com", s)
}
return w.logger.Write(p)
}
type log struct {
Url string
Request interface{}
Respone interface{}
Error string
}
func Info(ctx context.Context, cat string, url string, req interface{}, res interface{}) {
info := log{Url: url, Request: req, Respone: res}
glog.Ctx(ctx).Cat(cat).Info(info)
}
func Error(ctx context.Context, cat, url string, req interface{}, err error) {
info := log{Url: url, Request: req, Error:err.Error()}
glog.Ctx(ctx).Cat(cat).Error(info)
}
\ No newline at end of file
package log
import (
"context"
"errors"
"github.com/gogf/gf/frame/g"
"testing"
)
func TestLog(t *testing.T) {
Error(context.TODO(), "easy", "http://url/com", g.Map{
"a" : 1,
},errors.New("yyy"))
}
\ No newline at end of file
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论