代码拉取完成,页面将自动刷新
package xlog
import (
"io"
"gitee.com/xuesongtao/gotool/xdebug"
)
const (
FileShort = 1 << iota // 文件简短名, 如: test.go:11
FileLong // 文件全路径, 如: /a/b/c/test.go:11
XLogDate // 日期, 如: 2008-02-22
XLogTime // 时间, 如: 01:23:23
XLogTimeMill // 毫秒级时间, 如: 01:23:23.675
FileTimeStd = XLogDate | XLogTimeMill
)
// Config logger 配置
type Config struct {
StdPrint bool // 是否输出到控制台
StdPrintLevelColor bool // 根据内容打印颜色, 如果要写入日志文件的话, 这里将失效
PrintErrStack bool // log err 时是否要打印堆栈信息
Writer io.Writer
Flags int // log 标记
Level int // 日志级别
Prefix string // 前缀
FilePath string // 日志文件
LevelPrefixes map[int]string // 自定义前缀
}
// NewDefaultConfig 默认配置
func NewDefaultConfig() *Config {
return &Config{
StdPrint: true,
StdPrintLevelColor: true,
Flags: FileTimeStd,
Level: LevelDev,
}
}
// StdPrint 设置是否打印到控制台
func (x *XLogger) StdPrint(print bool) {
x.config.StdPrint = print
}
// Writer 设置打印到, 设置了, 就不会打印到 文件和控制台
func (x *XLogger) Writer(w io.Writer) {
x.config.Writer = w
}
// Flags 设置需要打印的标记
func (x *XLogger) Flags(flags int) {
x.config.Flags = flags
}
// Prefix 日志前缀
func (x *XLogger) Prefix(v string) {
x.config.Prefix = v
}
// FilePath 日志文件路径
func (x *XLogger) FilePath(path string) {
l := len(path)
sysSplit := xdebug.GetSysPathSplitSymbol()
if l > 0 && string(path[l-1]) != sysSplit {
path += sysSplit
}
x.config.FilePath = path
}
// StdPrintLevelColor 是否需要对日志级别标记颜色
func (x *XLogger) StdPrintLevelColor(print bool) {
x.config.StdPrintLevelColor = print
}
// PrintErrStack 是否要打印 stack
func (x *XLogger) PrintErrStack(print bool) {
x.config.PrintErrStack = print
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。