xlog

package
v0.3.0 Latest Latest
Warning

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

Go to latest
Published: Jan 10, 2024 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func SetDefaultFormatter

func SetDefaultFormatter(f Formatter)

func SetRootLogger

func SetRootLogger(l *Logger)

func StringLevel

func StringLevel(l Level) string

returns text representation for log level

Types

type BaseHandler

type BaseHandler struct {
	Frmt Formatter
}

func NewBaseHandler

func NewBaseHandler() *BaseHandler

func (*BaseHandler) SetFormatter

func (h *BaseHandler) SetFormatter(f Formatter)

type FileHandler

type FileHandler struct {
	*BaseHandler
	FilePath string
}

func NewFileHandler

func NewFileHandler(path string) *FileHandler

func (*FileHandler) HandleRecord

func (h *FileHandler) HandleRecord(r Record) error

type Formatter

type Formatter interface {
	ParseRecord(Record) string
}

func GetDefaultFormatter

func GetDefaultFormatter() Formatter

type Handler

type Handler interface {
	SetFormatter(Formatter)
	HandleRecord(Record) error
}

type Level

type Level int
const (
	TRACE4 Level = -50
	TRACE3 Level = -40
	TRACE2 Level = -30
	TRACE1 Level = -20
	DEBUG  Level = -10
	INFO   Level = 0
	WARN   Level = 10
	ERROR  Level = 20
	FATAL  Level = 30
	PANIC  Level = 40
)

logging levels

type Logger

type Logger struct {
	Name     string
	Level    Level
	Frmt     Formatter
	Handlers []Handler
	Parent   *Logger
	// contains filtered or unexported fields
}

func GetLogger

func GetLogger() *Logger

func NewLogger

func NewLogger(name string) *Logger

func (*Logger) AddHandler

func (l *Logger) AddHandler(h Handler)

func (*Logger) ClearHandlers

func (l *Logger) ClearHandlers()

func (*Logger) Debug

func (l *Logger) Debug(msg string, args ...any) error

func (*Logger) Error

func (l *Logger) Error(msg string, args ...any) error

func (*Logger) Fatal

func (l *Logger) Fatal(msg string, args ...any) error

func (*Logger) Info

func (l *Logger) Info(msg string, args ...any) error

func (*Logger) Log

func (l *Logger) Log(r Record) error

func (*Logger) NewChildLogger

func (l *Logger) NewChildLogger(name string) *Logger

func (*Logger) Panic

func (l *Logger) Panic(msg string, args ...any) error

func (*Logger) SetFormatter

func (l *Logger) SetFormatter(f Formatter)

func (*Logger) Trace1

func (l *Logger) Trace1(msg string, args ...any) error

func (*Logger) Trace2

func (l *Logger) Trace2(msg string, args ...any) error

func (*Logger) Trace3

func (l *Logger) Trace3(msg string, args ...any) error

func (*Logger) Trace4

func (l *Logger) Trace4(msg string, args ...any) error

func (*Logger) Warn

func (l *Logger) Warn(msg string, args ...any) error

type Record

type Record struct {
	Time    time.Time
	Level   Level
	Source  string
	Message string
	MsgArgs []any
}

func NewRecord

func NewRecord(lvl Level, src string, msg string, args ...any) Record

create new logging record

type StdFormatter

type StdFormatter struct {
	RecordFormat string
	TimeFormat   string
}

func NewStdFormatter

func NewStdFormatter(recFmt, tsFmt string) StdFormatter

func (StdFormatter) ParseRecord

func (f StdFormatter) ParseRecord(r Record) string

type StdoutHandler

type StdoutHandler struct {
	*BaseHandler
}

func NewStdoutHandler

func NewStdoutHandler() *StdoutHandler

func (*StdoutHandler) HandleRecord

func (h *StdoutHandler) HandleRecord(r Record) error

Jump to

Keyboard shortcuts

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