logange

package module
v0.4.0 Latest Latest
Warning

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

Go to latest
Published: Mar 15, 2021 License: MIT Imports: 6 Imported by: 0

README

logange

Another Go logger library, tailored for my use case 🤷‍♀️

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func LevelToString

func LevelToString(id Level) (s string)

LevelToString converts the inputted Level id into a string name of the level name

Types

type FileHandler added in v0.2.0

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

FileHandler is an implementation of the Handler interface that directs to stdout

func NewFileHandler added in v0.2.0

func NewFileHandler(path string) (FileHandler, error)

NewFileHandler returns an instantiated FileHandler type

func (*FileHandler) Close added in v0.2.0

func (h *FileHandler) Close()

Close closes the underlying os.File object

func (*FileHandler) Level added in v0.3.0

func (h *FileHandler) Level() Level

Level returns the current logging level

func (*FileHandler) LevelString added in v0.3.0

func (h *FileHandler) LevelString() string

LevelString returns the current logging level as a string

func (*FileHandler) RecordLog added in v0.2.0

func (h *FileHandler) RecordLog(message string, logLvl Level, lineno string, name string, datetime time.Time)

RecordLog records the log to the stdout stream

func (*FileHandler) SetFormatter added in v0.2.0

func (h *FileHandler) SetFormatter(f Formatter)

SetFormatter sets the formatter for the handler to use

func (*FileHandler) SetLevel added in v0.2.0

func (h *FileHandler) SetLevel(lvl Level)

SetLevel sets the level the handler uses

type Formatter

type Formatter interface {
	Format(message string, levelname string, lineno string, name string, datetime time.Time) string
}

Formatter is an interface for the Formatter used by logging

type Handler

type Handler interface {
	RecordLog(message string, logLvl Level, lineno string, name string, datetime time.Time)
	SetLevel(level Level)
	SetFormatter(f Formatter)
	Level() Level
	LevelString() string
}

Handler is an interface for the Handlers used by logging

type Level

type Level int

Level is a type alias for int

var (
	// LevelTrace TODO
	LevelTrace Level = 0
	// LevelDebug TODO
	LevelDebug Level = 10
	// LevelInfo TODO
	LevelInfo Level = 20
	// LevelWarn TODO
	LevelWarn Level = 30
	// LevelError TODO
	LevelError Level = 40
	// LevelCritical TODO
	LevelCritical Level = 50
)

type Logger

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

Logger is the basic unit of logging

var RootLogger *Logger

RootLogger is the parent of all Loggers

func NewLogger

func NewLogger(name string) Logger

NewLogger returns an properly instantiated Logger type

func (*Logger) AddHandler

func (l *Logger) AddHandler(h Handler)

AddHandler adds the provided handler to the Logger

func (*Logger) AddParent

func (l *Logger) AddParent(lo *Logger)

AddParent adds a parent logger

func (*Logger) Critical

func (l *Logger) Critical(s string)

Critical records a log record with level of Critical and then calls os.Exit(1)

func (*Logger) Debug

func (l *Logger) Debug(s string)

Debug records a log record with level of Debug

func (*Logger) Error

func (l *Logger) Error(s string)

Error records a log record with level of Error

func (*Logger) Info

func (l *Logger) Info(s string)

Info records a log record with level of Info

func (*Logger) Trace

func (l *Logger) Trace(s string)

Trace records a log record with level of Trace

func (*Logger) Warn

func (l *Logger) Warn(s string)

Warn records a log record with level of Warn

type StandardFormatter

type StandardFormatter struct {
	FormatString string
}

StandardFormatter is the in-library implementation of the Formatter interface

func (StandardFormatter) Format

func (f StandardFormatter) Format(message string, levelname string, lineno string, name string, datetime time.Time) (s string)

Format formats using the passed arguments and the formatter's format string

type StdoutHandler

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

StdoutHandler is an implementation of the Handler interface that directs to stdout

func NewStdoutHandler added in v0.2.0

func NewStdoutHandler() StdoutHandler

NewStdoutHandler returns an instantiated StdoutHandler type

func (*StdoutHandler) Level added in v0.3.0

func (h *StdoutHandler) Level() Level

Level returns the current logging level

func (*StdoutHandler) LevelString added in v0.3.0

func (h *StdoutHandler) LevelString() string

LevelString returns the current logging level as a string

func (*StdoutHandler) RecordLog

func (h *StdoutHandler) RecordLog(message string, logLvl Level, lineno string, name string, datetime time.Time)

RecordLog records the log to the stdout stream

func (*StdoutHandler) SetFormatter

func (h *StdoutHandler) SetFormatter(f Formatter)

SetFormatter sets the formatter for the handler to use

func (*StdoutHandler) SetLevel

func (h *StdoutHandler) SetLevel(lvl Level)

SetLevel sets the level the handler uses

Jump to

Keyboard shortcuts

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