logger

package module
v0.0.0-...-a114629 Latest Latest
Warning

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

Go to latest
Published: Feb 12, 2023 License: BSD-3-Clause Imports: 8 Imported by: 16

README

Logger

loggers.DefaultPrinter *Printer loggers.NewPrinter(writer *os.Writer) loggers.SetPrinter(printer *Printer)

printer.Write(writer io.Writer, message interface{}) printer.Print(message interface{})

loggers.DefaultManager *Manager loggers.NewManager( baseName []string, levels []Level, printer *Printer, ) *Manager

manager.SetLevel(level Level) *Manager manager.New(name []string) *Logger // Always create new logger manager.NewTable(size uint) *Table // Always create new table

logger.Debug(format string, msg interface{}) logger.Info(format string, msg interface{}) logger.Warn(format string, msg interface{}) logger.Error(err error) logger.ErrorString(format string, msg interface{}) logger.Panic(err error) logger.PanicString(format string, msg interface{}) logger.Log(format string, msg interface{}) logger.Line() logger.NewLine()

logger.New(name []string) *Logger logger.Extend(name []string) *Logger

table.IsInitial() bool table.Size(size uint) *Table table.NewRow(colume []string) *Table table.End() error

Documentation

Index

Constants

View Source
const (
	LINE  = "------------------------------------------------------------"
	EMPTY = ""

	TAB = '\t'
)

Variables

View Source
var DefaultManager = NewManager(
	make([]string, 0),
	INFO,
	DefaultPrinter,
)
View Source
var DefaultPrinter = NewPrinter(os.Stdout)

Default printer when not specify

Functions

func GetName

func GetName(names []string) string

func SetPrinter

func SetPrinter(p *Printer)

Override default printer

func ShouldPrint

func ShouldPrint(setting Level, level Level) bool

Types

type Level

type Level int8
const (
	SILENT Level = iota
	ERROR
	WARN
	INFO
	DEBUG
)

func ToLevel

func ToLevel[T float32 | float64 | int | Level](lvl T) Level

type Logger

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

func NewLogger

func NewLogger(names []string, level Level, printer *Printer) *Logger

func (*Logger) Debug

func (l *Logger) Debug(format string, msg ...interface{})

func (*Logger) Error

func (l *Logger) Error(err error)

func (*Logger) Errorf

func (l *Logger) Errorf(format string, msg ...interface{})

func (*Logger) Extend

func (l *Logger) Extend(names ...string) *Logger

func (*Logger) Info

func (l *Logger) Info(format string, msg ...interface{})

func (*Logger) IsDebug

func (l *Logger) IsDebug() bool

func (*Logger) IsError

func (l *Logger) IsError() bool

func (*Logger) IsInfo

func (l *Logger) IsInfo() bool

func (*Logger) IsWarn

func (l *Logger) IsWarn() bool

func (*Logger) Line

func (l *Logger) Line()

func (*Logger) Log

func (l *Logger) Log(format string, msg ...interface{})

func (*Logger) New

func (l *Logger) New(names ...string) *Logger

func (*Logger) NewLine

func (l *Logger) NewLine()

func (*Logger) Panic

func (l *Logger) Panic(err error)

func (*Logger) Panicf

func (l *Logger) Panicf(format string, msg ...interface{})

func (*Logger) SetLevel

func (l *Logger) SetLevel(lvl Level) *Logger

func (*Logger) ToTable

func (l *Logger) ToTable(size uint) *Table

func (*Logger) Warn

func (l *Logger) Warn(err error)

func (*Logger) Warnf

func (l *Logger) Warnf(format string, msg ...interface{})

type Manager

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

func NewManager

func NewManager(
	baseNames []string,
	level Level,
	printer *Printer,
) *Manager

func (*Manager) New

func (m *Manager) New(names ...string) *Logger

func (*Manager) NewTable

func (m *Manager) NewTable(size uint) *Table

func (*Manager) SetLevel

func (m *Manager) SetLevel(level Level) *Manager

type Printer

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

Printer is printable object where it doesn't have own level but it still respect SILENT mode Normally, you going to use this kind of output for custom format (table, readme etc.)

func NewPrinter

func NewPrinter(writer io.Writer) *Printer

Create new printer from io.Writer

func (*Printer) Print

func (p *Printer) Print(message interface{})

func (*Printer) Write

func (p *Printer) Write(writer io.Writer, message interface{})

type Table

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

func NewTable

func NewTable(size uint, level Level, printer *Printer) *Table

func (*Table) End

func (t *Table) End() error

func (*Table) Row

func (t *Table) Row(msg ...string) *Table

func (*Table) ToLogger

func (l *Table) ToLogger(names ...string) *Logger

func (*Table) ToMsg

func (t *Table) ToMsg(msg ...string) string

Jump to

Keyboard shortcuts

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