logo

package module
v0.1.4 Latest Latest
Warning

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

Go to latest
Published: Apr 21, 2022 License: MIT Imports: 8 Imported by: 11

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetLevelString

func GetLevelString(level LogLevel) string

func JSONFormatter

func JSONFormatter(e *Entry) ([]byte, error)

func NewLogger added in v0.1.0

func NewLogger(printers []Printer) *logger

func NewStdPrinters added in v0.1.0

func NewStdPrinters() map[LogLevel]Printer

func SetTimeFormatter added in v0.1.0

func SetTimeFormatter(formatter string)

func TextFormatter

func TextFormatter(e *Entry) ([]byte, error)

Types

type ColorPrinter added in v0.1.0

type ColorPrinter struct {
	StdPrinter
	// contains filtered or unexported fields
}

func (*ColorPrinter) Print added in v0.1.0

func (s *ColorPrinter) Print(message []byte) error

type Entry

type Entry struct {
	File string  `json:"file"`
	Line int     `json:"line"`
	Time LogTime `json:"time"` // 转换
	// TimeStr        string      `json:"time"`  //
	Level LogLevel `json:"level"` // 转换
	// LevelStr       string      `json:"level"` //
	Message string      `json:"message"`
	Data    interface{} `json:"data"`
	Err     error       `json:"-"` // 转换
	// hideCallStacks bool        `json:"-"` // 不需要输出
	Error string `json:"error"`
}

type Formatter

type Formatter func(*Entry) ([]byte, error)

type LogLevel

type LogLevel int
const (
	LevelDebug LogLevel = iota
	LevelInfo
	LevelWarn
	LevelError
)

func (*LogLevel) MarshalIndent added in v0.1.0

func (l *LogLevel) MarshalIndent() ([]byte, error)

type LogTime added in v0.1.0

type LogTime struct {
	time.Time
}

func (*LogTime) MarshalIndent added in v0.1.0

func (t *LogTime) MarshalIndent() ([]byte, error)

type Logger

type Logger interface {
	// With data 可以是 error 或其它能够被 json 序列化的内容
	With(data interface{}) *ProxyLogger
	Debug(v ...interface{})
	Debugf(format string, v ...interface{})
	Info(v ...interface{})
	Infof(format string, v ...interface{})
	Warn(v ...interface{})
	Warnf(format string, v ...interface{})
	Error(v ...interface{})
	Errorf(format string, v ...interface{})

	SetLevel(level LogLevel) Logger
	GetLevel() LogLevel

	SetLogFileLine(log bool) Logger
	IsLogFileLine() bool

	SetFormatter(fmt Formatter) Logger
	SetPrinters(printers map[LogLevel]Printer) Logger
}

type Printer added in v0.1.0

type Printer interface {
	SetOutput(writer io.Writer)
	Print(content []byte) error
}

func NewColorPrinters added in v0.1.0

func NewColorPrinters() []Printer

func NewPrinter added in v0.1.0

func NewPrinter(writer io.Writer, color ...string) Printer

type ProxyLogger

type ProxyLogger struct {
	// contains filtered or unexported fields
}

func (*ProxyLogger) Debug

func (e *ProxyLogger) Debug(v ...interface{})

func (*ProxyLogger) Debugf

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

func (*ProxyLogger) Error

func (e *ProxyLogger) Error(v ...interface{})

func (*ProxyLogger) Errorf

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

func (ProxyLogger) GetLevel added in v0.1.0

func (l ProxyLogger) GetLevel() LogLevel

func (*ProxyLogger) Info

func (e *ProxyLogger) Info(v ...interface{})

func (*ProxyLogger) Infof

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

func (ProxyLogger) IsLogFileLine added in v0.1.0

func (l ProxyLogger) IsLogFileLine() bool

func (ProxyLogger) ReleaseProxyLogger added in v0.1.0

func (l ProxyLogger) ReleaseProxyLogger(plog *ProxyLogger)

func (ProxyLogger) SetFormatter added in v0.1.0

func (l ProxyLogger) SetFormatter(fmt Formatter) Logger

func (ProxyLogger) SetLevel added in v0.1.0

func (l ProxyLogger) SetLevel(level LogLevel) Logger

func (ProxyLogger) SetLogFileLine added in v0.1.0

func (l ProxyLogger) SetLogFileLine(log bool) Logger

func (ProxyLogger) SetPrinters added in v0.1.0

func (l ProxyLogger) SetPrinters(printers map[LogLevel]Printer) Logger

func (*ProxyLogger) Warn

func (e *ProxyLogger) Warn(v ...interface{})

func (*ProxyLogger) Warnf

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

func (*ProxyLogger) With added in v0.1.0

func (e *ProxyLogger) With(data interface{}) *ProxyLogger
func (e *ProxyLogger) WithData(data interface{}) *ProxyLogger {
	e.entry.Data = data
	return e
}

type StdPrinter added in v0.1.0

type StdPrinter struct {
	// contains filtered or unexported fields
}

func (*StdPrinter) Print added in v0.1.0

func (s *StdPrinter) Print(message []byte) error

func (*StdPrinter) SetOutput added in v0.1.0

func (s *StdPrinter) SetOutput(writer io.Writer)

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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