modulepackage
0.0.0-20191226094333-f56d55ec7426
Repository: https://github.com/corgi-kx/logcustom.git
Documentation: pkg.go.dev
# README
golang日志小工具
花了几天时间写了个golang日志小工具,基本满足日常开发需求
特点
- 支持定向输出日志到指定文件
- 支持隐藏调试信息
- 支持彩色打印(windows/linux/mac均支持)
- 显示输出日志的类名、函数/方法名
Feature
- Supports directing output logs to specified files
- Support for hiding debugging information
- Support color printing (Windows/Linux/MAC)
- Displays the class name, function/method name of the output log
源码地址: https://github.com/corgi-kx/logcustom
示例 Example
打印效果:
使用示范:
package main
import (
log "github.com/corgi-kx/logcustom"
"os"
)
func main() {
//直接调用log,则是全局使用
log.Info("Write something you want to print !")
log.Warn("Write something you want to print !")
log.Trace("Write something you want to print !")
log.Debug("Write something you want to print !")
log.Error("Write something you want to print !")
//设置输出信息隐藏等级
err := log.SetLogDiscardLevel(log.Leveldebug)
if err != nil {
log.Error(err)
}
log.Info("SetLogDiscardLevel test !") //INFO不会被打印
log.Debug("SetLogDiscardLevel test !")
log.Warn("SetLogDiscardLevel test !")
//创建新的日志对象
mylog := log.New()
file, err := os.OpenFile("log.txt", os.O_CREATE|os.O_APPEND|os.O_WRONLY, 0666)
if err != nil {
log.Error(err)
}
//将日志信息输出到指定文件
mylog.SetOutputAbove(file, log.Levelwarn) //WARN及WARN以上级别的日志会输出到指定文件
mylog.Trace("SetOutputAll test !")
mylog.Info("SetOutputAll test !")
mylog.Debug("SetOutputAll test !")
mylog.Warn("SetOutputAll test !")
mylog.Error("SetOutputAll test !")
}
安装 Installing
go get github.com/corgi-kx/logcustom
安装成功后,日志包就可以使用了,包位置在
$GOPATH/src/github.com/corgi-kx/logcustom
您可以使用 go get -u
对此包进行更新
文档 Documentation
您可以使用以下命令来查看使用文档
godoc github.com/corgi-kx/logcustom
或者在终端输入如下命令:
godoc -http=:6060
在浏览器访问此界面
http://127.0.0.1:6060/pkg/github.com/corgi-kx/logcustom/
# Packages
No description provided by the author
# Functions
Debug级别的打印信息,输入要打印的内容,会自动换行.
Debug级别的打印信息,第一个参数输入格式,第二个参数输入要打印的内容,类似fmt.Printf.
Error级别的打印信息,输入要打印的内容,会自动换行.
Errorf级别的打印信息,第一个参数输入格式,第二个参数输入要打印的内容,类似fmt.Printf.
Fatal级别的打印信息,输入要打印的内容,会自动换行 输出错误信息后,直接执行os.exit(1)中断程序.
Fatal级别的打印信息,第一个参数输入格式,第二个参数输入要打印的内容 输出错误信息后,直接执行os.exit(1)中断程序.
Info级别的打印信息,输入要打印的内容,会自动换行.
Infof级别的打印信息,第一个参数输入格式,第二个参数输入要打印的内容,类似fmt.Printf.
是否彩色打印.
生成一个新的日志对象.
Panic级别的打印信息,输入要打印的内容,会自动换行 执行Panic,递归执行每层的defer后中断程序.
Panicf级别的打印信息,第一个参数输入格式,第二个参数输入要打印的内容 输出错误信息后,执行Panic(),递归执行每层的defer后中断程序.
SetLogDiscard隐藏单个日志级别的输出信息传入需要隐藏的日志级别,日志级别不能超过Levelpanic.
SetLogDiscardLevel隐藏多个日志级别输出信息传入需要隐藏的日志级别,最高设置到Levelpanic 即是低于panic等级的日志都不显示.
SetOutput设置单个日志级别输出到目标位置传入文件的句柄(或者实现了io.Writer接口的对象)与日志级别,则该日志级别的日志将会输出到指定的文件或位置.
SetOutputAbove设置指定日志级别及以上的输出到目标位置传入文件的句柄(或者实现了io.Writer接口的对象)与日志级别,则该日志级别以上的日志(包括此日志级别)将会输出到指定的文件或位置.
SetOutputAll设置全部日志级别输出到目标位置传入文件的句柄(或者实现了io.Writer接口的对象)与日志级别,则全部日志级别的日志将会输出到指定的文件或位置.
SetOutputBelow设置指定日志级别及以下的输出到目标位置传入文件的句柄(或者实现了io.Writer接口的对象)与日志级别,则该日志级别以下的日志(包括此日志级别)将会输出到指定的文件或位置.
Trace级别的打印信息,输入要打印的内容,会自动换行.
Trace级别的打印信息,第一个参数输入格式,第二个参数输入要打印的内容,类似fmt.Printf.
Warn级别的打印信息,输入要打印的内容,会自动换行.
Warn级别的打印信息,第一个参数输入格式,第二个参数输入要打印的内容,类似fmt.Printf.
# Constants
系统调试.
程序错误,不影响继续使用.
程序直接结束,打印错误信息后直接调用os.Exit(1)结束程序,不会调用各层defer.
系统信息.
程序异常,递归调用本层及上层defer后,中断程序进程,类似java的异常处理.
基本输出,.
系统警告,提示有可预测的错误.
蓝色.
碧蓝.
绿色.
紫色.
红色.
黄色.