![]() |
3 years ago | |
---|---|---|
golog | 3 years ago | |
zaplog | 3 years ago | |
.gitignore | 3 years ago | |
README.md | 3 years ago | |
go.mod | 3 years ago | |
go.sum | 3 years ago | |
jylog.go | 3 years ago |
日志工具类
简单的原生日志输出包
//使用go get
go get bp.jydev.jianyu360.cn/BP/jylog
//使用 go mod
import "bp.jydev.jianyu360.cn/BP/jylog/golog"
//4个参数,参数不分先后顺序,整数代表保留天数,函数代表输出流(可多个),字符串代表定时任务或日志文件目录
//默认保留15天,每天0点清理,默认输出当前执行目录下jylog目录
InitGoLog()
//保留7天日志
InitGoLog(7)
//xweb项目使用这个输出流
InitGoLog(xweb.RootApp().Logger.SetOutput)
//每天零点切割日志,并清理7天前日志
InitGoLog(7,xweb.RootApp().Logger.SetOutput,"0 0 0 * * *")
//输出到D:/jylog 目录
InitGoLog(7,xweb.RootApp().Logger.SetOutput,"0 0 0 * * *","D:/jylog")
zap日志工具的封装
warn级别的调用堆栈信息
type C struct {
File string //文件路径,默认当前jylog/app.log
IsJson bool //json 或 普通格式,默认普通格式
IsDebug bool //是否是调试模式,默认非调试
Level int //日志级别 1=debug 2=info 默认2 3=warn 4=error 5=dpanic 6=panic 7=fatal
MaxSize int // 每个日志文件保存的大小 单位:M 默认2048
MaxAge int // 文件最多保存多少天 默认15
MaxBackups int // 日志文件最多保存多少个备份 默认15
NoCompress bool // 是否不压缩,默认压缩
AppName string //应用名称,无
}
//使用go get
go get bp.jydev.jianyu360.cn/BP/jylog
//使用 go mod,使用log别名,覆盖标准的输出log方法(Print、Println、Printf,使用info级别)
import (
log "bp.jydev.jianyu360.cn/BP/jylog/zaplog"
)
//初始化,不初始化会报错
InitZaplog()
InitZaplog(&C{
File: "D:/jylog/app.log",
IsJson: true,
IsDebug: true,
AppName: "swordfish",
})
//调用zap对象进行日志输出
ZapLogger.Debug("debug")
ZapLogger.Info("msg", zap.Any("j", 1))
//使用别名的方法
log.Println("test log")