nazalog

package
v0.5.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 25, 2019 License: MIT Imports: 9 Imported by: 230

Documentation

Overview

package nazalog 日志库

Index

Constants

This section is empty.

Variables

View Source
var ErrLog = errors.New("naza.log:fxxk")

Functions

func Debug

func Debug(v ...interface{})

func Debugf

func Debugf(format string, v ...interface{})

func Error

func Error(v ...interface{})

func Errorf

func Errorf(format string, v ...interface{})

func Fatal

func Fatal(v ...interface{})

func FatalIfErrorNotNil

func FatalIfErrorNotNil(err error)

func Fatalf

func Fatalf(format string, v ...interface{})

func Info

func Info(v ...interface{})

func Infof

func Infof(format string, v ...interface{})

func Init

func Init(modOptions ...ModOption) error

这里不加锁保护,如果要调用Init函数初始化全局的Logger,那么由调用方保证调用Init函数时不会并发调用全局Logger的其他方法

func Out

func Out(level Level, calldepth int, s string)

func Output

func Output(level Level, calldepth int, v ...interface{})

func Outputf

func Outputf(level Level, calldepth int, format string, v ...interface{})

func Panic

func Panic(v ...interface{})

func PanicIfErrorNotNil

func PanicIfErrorNotNil(err error)

func Panicf

func Panicf(format string, v ...interface{})

func Warn

func Warn(v ...interface{})

func Warnf

func Warnf(format string, v ...interface{})

Types

type Level

type Level uint8
const (
	LevelDebug Level // 1
	LevelInfo
	LevelWarn
	LevelError
	LevelFatal
	LevelPanic
)

type Logger

type Logger interface {
	Debugf(format string, v ...interface{})
	Infof(format string, v ...interface{})
	Warnf(format string, v ...interface{})
	Errorf(format string, v ...interface{})
	Fatalf(format string, v ...interface{}) // 打印日志并退出程序
	Panicf(format string, v ...interface{})

	Debug(v ...interface{})
	Info(v ...interface{})
	Warn(v ...interface{})
	Error(v ...interface{})
	Fatal(v ...interface{})
	Panic(v ...interface{})

	FatalIfErrorNotNil(err error)
	PanicIfErrorNotNil(err error)

	Outputf(level Level, calldepth int, format string, v ...interface{})
	Output(level Level, calldepth int, v ...interface{})
	Out(level Level, calldepth int, s string)
}

func New

func New(modOptions ...ModOption) (Logger, error)

type ModOption

type ModOption func(option *Option)

type Option

type Option struct {
	Level Level `json:"level"` // 日志级别,大于等于该级别的日志才会被输出

	// 文件输出和控制台输出可同时打开
	// 控制台输出主要用做开发时调试,打开后level字段使用彩色输出
	Filename   string `json:"filename"`     // 输出日志文件名,如果为空,则不写日志文件。可包含路径,路径不存在时,将自动创建
	IsToStdout bool   `json:"is_to_stdout"` // 是否以stdout输出到控制台

	IsRotateDaily bool `json:"is_rotate_daily"` // 日志按天翻转

	ShortFileFlag bool `json:"short_file_flag"` // 是否在每行日志尾部添加源码文件及行号的信息
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL