log

package module
v0.0.7 Latest Latest
Warning

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

Go to latest
Published: Feb 14, 2024 License: MIT Imports: 8 Imported by: 28

README

Common Logger

PR Builder CI Release

This is a common logger for Go projects. It allows you to log to a file, console or both. It also allows you to log to a file and console with different levels of logging.

It can also log to the ADO pipelines. and use icons to beautify your log output.

Icons

List of available icons:

Icon Description
IconHammer 🔨
IconFire 🔥
IconWrench 🔧
IconKey 🔑
IconLock 🔒
IconOpenLock 🔓
IconBell 🔔
IconMagnifyingGlass 🔍
IconBook 📖
IconBulb 💡
IconBomb 💣
IconLargeWhiteSquare
IconCircle
IconWarning
IconRightArrow
IconHourGlass
IconInfo
IconFlag 🚩
IconRocket 🚀
IconCheckMark
IconCrossMark
IconRevolvingLight 🚨
IconBlackSquare :black_square:
IconFolder 📁
IconClipboard 📋
IconRightwardsArrow
IconExclamationMark
IconAsterisk *⃣
IconRightHand 👉
IconCheckbox
IconToilet 🚽
IconThumbsUp 👍
IconThumbDown 👎
IconPage 📄

Documentation

Index

Constants

View Source
const (
	SuccessColor  = color.FgGreen
	InfoColor     = color.FgHiWhite
	NoticeColor   = color.FgHiCyan
	WarningColor  = color.FgYellow
	ErrorColor    = color.FgRed
	DebugColor    = color.FgMagenta
	TraceColor    = color.FgHiMagenta
	CommandColor  = color.FgBlue
	DisabledColor = color.FgHiBlack
)

Logger Ansi Colors

View Source
const (
	LOG_LEVEL string = "LOG_LEVEL"
)

Variables

This section is empty.

Functions

func Register

func Register[T Logger](value T)

Types

type AdoCmdLogger added in v0.0.2

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

AdoCmdLogger Command Line Logger implementation

func (*AdoCmdLogger) Command added in v0.0.2

func (l *AdoCmdLogger) Command(format string, words ...interface{})

Command log message

func (*AdoCmdLogger) Debug added in v0.0.2

func (l *AdoCmdLogger) Debug(format string, words ...interface{})

Debug log message

func (*AdoCmdLogger) Disabled added in v0.0.2

func (l *AdoCmdLogger) Disabled(format string, words ...interface{})

Disabled log message

func (*AdoCmdLogger) Error added in v0.0.2

func (l *AdoCmdLogger) Error(format string, words ...interface{})

Error log message

func (*AdoCmdLogger) Exception added in v0.0.2

func (l *AdoCmdLogger) Exception(err error, format string, words ...interface{})

Error log message

func (*AdoCmdLogger) Fatal added in v0.0.2

func (l *AdoCmdLogger) Fatal(format string, words ...interface{})

Fatal log message

func (*AdoCmdLogger) FatalError added in v0.0.2

func (l *AdoCmdLogger) FatalError(e error, format string, words ...interface{})

FatalError log message

func (*AdoCmdLogger) Info added in v0.0.2

func (l *AdoCmdLogger) Info(format string, words ...interface{})

Info log information message

func (AdoCmdLogger) Init added in v0.0.2

func (l AdoCmdLogger) Init() Logger

func (*AdoCmdLogger) IsTimestampEnabled added in v0.0.4

func (l *AdoCmdLogger) IsTimestampEnabled() bool

func (*AdoCmdLogger) Log added in v0.0.2

func (l *AdoCmdLogger) Log(format string, level Level, words ...interface{})

Log Log information message

func (*AdoCmdLogger) LogError added in v0.0.2

func (l *AdoCmdLogger) LogError(message error)

LogError log message

func (*AdoCmdLogger) LogHighlight added in v0.0.2

func (l *AdoCmdLogger) LogHighlight(format string, level Level, highlightColor strcolor.ColorCode, words ...interface{})

LogHighlight Log information message

func (*AdoCmdLogger) LogIcon added in v0.0.2

func (l *AdoCmdLogger) LogIcon(icon LoggerIcon, format string, level Level, words ...interface{})

Log Log information message

func (*AdoCmdLogger) Notice added in v0.0.2

func (l *AdoCmdLogger) Notice(format string, words ...interface{})

Notice log message

func (*AdoCmdLogger) Success added in v0.0.2

func (l *AdoCmdLogger) Success(format string, words ...interface{})

Success log message

func (*AdoCmdLogger) TaskError added in v0.0.2

func (l *AdoCmdLogger) TaskError(format string, isComplete bool, words ...interface{})

TaskError log message

func (*AdoCmdLogger) TaskSuccess added in v0.0.2

func (l *AdoCmdLogger) TaskSuccess(format string, isComplete bool, words ...interface{})

TaskSuccess log message

func (*AdoCmdLogger) TaskWarn added in v0.0.2

func (l *AdoCmdLogger) TaskWarn(format string, words ...interface{})

TaskWarn log message

func (*AdoCmdLogger) Trace added in v0.0.2

func (l *AdoCmdLogger) Trace(format string, words ...interface{})

Trace log message

func (*AdoCmdLogger) UseCorrelationId added in v0.0.2

func (l *AdoCmdLogger) UseCorrelationId(value bool)

func (*AdoCmdLogger) UseIcons added in v0.0.2

func (l *AdoCmdLogger) UseIcons(value bool)

func (*AdoCmdLogger) UseTimestamp added in v0.0.2

func (l *AdoCmdLogger) UseTimestamp(value bool)

func (*AdoCmdLogger) Warn added in v0.0.2

func (l *AdoCmdLogger) Warn(format string, words ...interface{})

Warn log message

type CmdLogger

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

CmdLogger Command Line Logger implementation

func (*CmdLogger) Command

func (l *CmdLogger) Command(format string, words ...interface{})

Command log message

func (*CmdLogger) Debug

func (l *CmdLogger) Debug(format string, words ...interface{})

Debug log message

func (*CmdLogger) Disabled

func (l *CmdLogger) Disabled(format string, words ...interface{})

Disabled log message

func (*CmdLogger) Error

func (l *CmdLogger) Error(format string, words ...interface{})

Error log message

func (*CmdLogger) Exception

func (l *CmdLogger) Exception(err error, format string, words ...interface{})

Error log message

func (*CmdLogger) Fatal

func (l *CmdLogger) Fatal(format string, words ...interface{})

Fatal log message

func (*CmdLogger) FatalError

func (l *CmdLogger) FatalError(e error, format string, words ...interface{})

FatalError log message

func (*CmdLogger) Info

func (l *CmdLogger) Info(format string, words ...interface{})

Info log information message

func (CmdLogger) Init

func (l CmdLogger) Init() Logger

func (*CmdLogger) IsTimestampEnabled added in v0.0.4

func (l *CmdLogger) IsTimestampEnabled() bool

func (*CmdLogger) Log

func (l *CmdLogger) Log(format string, level Level, words ...interface{})

Log Log information message

func (*CmdLogger) LogError

func (l *CmdLogger) LogError(message error)

LogError log message

func (*CmdLogger) LogHighlight

func (l *CmdLogger) LogHighlight(format string, level Level, highlightColor strcolor.ColorCode, words ...interface{})

LogHighlight Log information message

func (*CmdLogger) LogIcon

func (l *CmdLogger) LogIcon(icon LoggerIcon, format string, level Level, words ...interface{})

Log Log information message

func (*CmdLogger) Notice

func (l *CmdLogger) Notice(format string, words ...interface{})

Notice log message

func (*CmdLogger) Success

func (l *CmdLogger) Success(format string, words ...interface{})

Success log message

func (*CmdLogger) TaskError

func (l *CmdLogger) TaskError(format string, isComplete bool, words ...interface{})

TaskError log message

func (*CmdLogger) TaskSuccess

func (l *CmdLogger) TaskSuccess(format string, isComplete bool, words ...interface{})

TaskSuccess log message

func (*CmdLogger) TaskWarn

func (l *CmdLogger) TaskWarn(format string, words ...interface{})

TaskWarn log message

func (*CmdLogger) Trace

func (l *CmdLogger) Trace(format string, words ...interface{})

Trace log message

func (*CmdLogger) UseCorrelationId

func (l *CmdLogger) UseCorrelationId(value bool)

func (*CmdLogger) UseIcons

func (l *CmdLogger) UseIcons(value bool)

func (*CmdLogger) UseTimestamp

func (l *CmdLogger) UseTimestamp(value bool)

func (*CmdLogger) Warn

func (l *CmdLogger) Warn(format string, words ...interface{})

Warn log message

type Level added in v0.0.2

type Level int

Level Entity

const (
	Error Level = iota
	Warning
	Info
	Debug
	Trace
)

LogLevel Enum Definition

type Logger

type Logger interface {
	IsTimestampEnabled() bool
	UseTimestamp(value bool)
	UseCorrelationId(value bool)
	UseIcons(value bool)

	Init() Logger
	Log(format string, level Level, words ...interface{})
	LogIcon(icon LoggerIcon, format string, level Level, words ...interface{})
	LogHighlight(format string, level Level, highlightColor strcolor.ColorCode, words ...interface{})
	Info(format string, words ...interface{})
	Success(format string, words ...interface{})
	TaskSuccess(format string, isComplete bool, words ...interface{})
	Warn(format string, words ...interface{})
	TaskWarn(format string, words ...interface{})
	Command(format string, words ...interface{})
	Disabled(format string, words ...interface{})
	Notice(format string, words ...interface{})
	Debug(format string, words ...interface{})
	Trace(format string, words ...interface{})
	Error(format string, words ...interface{})
	Exception(err error, format string, words ...interface{})
	LogError(message error)
	TaskError(format string, isComplete bool, words ...interface{})
	Fatal(format string, words ...interface{})
	FatalError(e error, format string, words ...interface{})
}

Logger Interface

type LoggerIcon added in v0.0.2

type LoggerIcon string
const (
	IconHammer           LoggerIcon = "\xF0\x9F\x94\xA8"
	IconFire             LoggerIcon = "\xF0\x9F\x94\xA5"
	IconWrench           LoggerIcon = "\xF0\x9F\x94\xA7"
	IconKey              LoggerIcon = "\xF0\x9F\x94\x91"
	IconLock             LoggerIcon = "\xF0\x9F\x94\x92"
	IconOpenLock         LoggerIcon = "\xF0\x9F\x94\x93"
	IconBell             LoggerIcon = "\xF0\x9F\x94\x94"
	IconMagnifyingGlass  LoggerIcon = "\xF0\x9F\x94\x8D"
	IconBook             LoggerIcon = "\xF0\x9F\x93\x94"
	IconBulb             LoggerIcon = "\xF0\x9F\x92\xA1"
	IconBomb             LoggerIcon = "\xF0\x9F\x92\xA3"
	IconLargeWhiteSquare LoggerIcon = "\xE2\xAC\x9C"
	IconCircle           LoggerIcon = "\xE2\x9A\xAB"
	IconWarning          LoggerIcon = "\xE2\x9A\xA0"
	IconRightArrow       LoggerIcon = "\xE2\x96\xB6"
	IconHourGlass        LoggerIcon = "\xE2\x8C\x9B"
	IconInfo             LoggerIcon = "\xE2\x84\xB9"
	IconFlag             LoggerIcon = "\xF0\x9F\x9A\xA9"
	IconRocket           LoggerIcon = "\xF0\x9F\x9A\x80"
	IconCheckMark        LoggerIcon = "\xE2\x9C\x85"
	IconCrossMark        LoggerIcon = "\xE2\x9D\x8C"
	IconRevolvingLight   LoggerIcon = "\xF0\x9F\x9A\xA8"
	IconBlackSquare      LoggerIcon = "\xE2\x97\xBE"
	IconFolder           LoggerIcon = "\xF0\x9F\x93\x81"
	IconClipboard        LoggerIcon = "\xF0\x9F\x93\x8B "
	IconRightwardsArrow  LoggerIcon = "\xE2\x96\xB6"
	IconExclamationMark  LoggerIcon = "\xE2\x9D\x95"
	IconAsterisk         LoggerIcon = "\xE2\x9C\xB3"
	IconRightHand        LoggerIcon = "\xF0\x9F\x91\x89"
	IconCheckbox         LoggerIcon = "\xE2\x98\x91"
	IconToilet           LoggerIcon = "	\xF0\x9F\x9A\xBD"
	IconThumbsUp         LoggerIcon = "\xF0\x9F\x91\x8D"
	IconThumbDown        LoggerIcon = "\xF0\x9F\x91\x8E"
	IconPage             LoggerIcon = "\xF0\x9F\x93\x84"
)

type LoggerOptions added in v0.0.2

type LoggerOptions int64

LogOptions Definition

const (
	WithTimestamp LoggerOptions = iota
	WithCorrelationId
)

type LoggerService added in v0.0.2

type LoggerService struct {
	Loggers        []Logger
	LogLevel       Level
	HighlightColor strcolor.ColorCode
	UseTimestamp   bool
}

Logger Default structure

func Get

func Get() *LoggerService

Get Creates a new Logger instance

func New added in v0.0.2

func New() *LoggerService

func NewMockLogger added in v0.0.6

func NewMockLogger() *LoggerService

func (*LoggerService) AddCmdLogger added in v0.0.2

func (l *LoggerService) AddCmdLogger()

AddCmdLogger Add a command line logger to the system

func (*LoggerService) Command added in v0.0.2

func (l *LoggerService) Command(format string, words ...interface{})

Command log message

func (*LoggerService) Debug added in v0.0.2

func (l *LoggerService) Debug(format string, words ...interface{})

Debug log message

func (*LoggerService) Disabled added in v0.0.2

func (l *LoggerService) Disabled(format string, words ...interface{})

Disabled log message

func (*LoggerService) EnableTimestamp added in v0.0.5

func (l *LoggerService) EnableTimestamp(value bool) *LoggerService

func (*LoggerService) Error added in v0.0.2

func (l *LoggerService) Error(format string, words ...interface{})

Error log message

func (*LoggerService) Exception added in v0.0.2

func (l *LoggerService) Exception(err error, format string, words ...interface{})

Exception log message

func (*LoggerService) Fatal added in v0.0.2

func (l *LoggerService) Fatal(format string, words ...interface{})

Fatal log message

func (*LoggerService) FatalError added in v0.0.2

func (l *LoggerService) FatalError(e error, format string, words ...interface{})

FatalError log message

func (*LoggerService) GetRequestPrefix added in v0.0.3

func (l *LoggerService) GetRequestPrefix(r *http.Request, logUrl bool) string

func (*LoggerService) Info added in v0.0.2

func (l *LoggerService) Info(format string, words ...interface{})

Info log information message

func (*LoggerService) Log added in v0.0.2

func (l *LoggerService) Log(format string, level Level, words ...interface{})

Log Log information message

func (*LoggerService) LogError added in v0.0.2

func (l *LoggerService) LogError(message error)

LogError log message

func (*LoggerService) LogHighlight added in v0.0.2

func (l *LoggerService) LogHighlight(format string, level Level, words ...interface{})

LogHighlight Log information message

func (*LoggerService) LogIcon added in v0.0.2

func (l *LoggerService) LogIcon(icon LoggerIcon, format string, level Level, words ...interface{})

LogIcon Log message with custom icon

func (*LoggerService) Notice added in v0.0.2

func (l *LoggerService) Notice(format string, words ...interface{})

Notice log message

func (*LoggerService) Success added in v0.0.2

func (l *LoggerService) Success(format string, words ...interface{})

Success log message

func (*LoggerService) TaskError added in v0.0.2

func (l *LoggerService) TaskError(format string, isComplete bool, words ...interface{})

TaskError log message

func (*LoggerService) TaskSuccess added in v0.0.2

func (l *LoggerService) TaskSuccess(format string, isComplete bool, words ...interface{})

TaskSuccess log message

func (*LoggerService) TaskWarn added in v0.0.2

func (l *LoggerService) TaskWarn(format string, words ...interface{})

TaskWarn log message

func (*LoggerService) ToggleTimestamp added in v0.0.4

func (l *LoggerService) ToggleTimestamp() *LoggerService

func (*LoggerService) Trace added in v0.0.2

func (l *LoggerService) Trace(format string, words ...interface{})

Trace log message

func (*LoggerService) Warn added in v0.0.2

func (l *LoggerService) Warn(format string, words ...interface{})

Warn log message

func (*LoggerService) WithCorrelationId added in v0.0.2

func (l *LoggerService) WithCorrelationId() *LoggerService

func (*LoggerService) WithDebug added in v0.0.2

func (l *LoggerService) WithDebug() *LoggerService

func (*LoggerService) WithIcons added in v0.0.2

func (l *LoggerService) WithIcons() *LoggerService

func (*LoggerService) WithTimestamp added in v0.0.2

func (l *LoggerService) WithTimestamp() *LoggerService

func (*LoggerService) WithTrace added in v0.0.2

func (l *LoggerService) WithTrace() *LoggerService

func (*LoggerService) WithWarning added in v0.0.2

func (l *LoggerService) WithWarning() *LoggerService

type MockLogger added in v0.0.6

type MockLogger struct {
	LastPrintedMessage MockedLogMessage
	PrintedMessages    []MockedLogMessage
	LastCallType       string
	// contains filtered or unexported fields
}

func GetMockLogger added in v0.0.6

func GetMockLogger() (*MockLogger, error)

func (*MockLogger) Clear added in v0.0.6

func (l *MockLogger) Clear()

func (*MockLogger) Command added in v0.0.6

func (l *MockLogger) Command(format string, words ...interface{})

Command log message

func (*MockLogger) Debug added in v0.0.6

func (l *MockLogger) Debug(format string, words ...interface{})

Debug log message

func (*MockLogger) Disabled added in v0.0.6

func (l *MockLogger) Disabled(format string, words ...interface{})

Disabled log message

func (*MockLogger) Error added in v0.0.6

func (l *MockLogger) Error(format string, words ...interface{})

Error log message

func (*MockLogger) Exception added in v0.0.6

func (l *MockLogger) Exception(err error, format string, words ...interface{})

Error log message

func (*MockLogger) Fatal added in v0.0.6

func (l *MockLogger) Fatal(format string, words ...interface{})

Fatal log message

func (*MockLogger) FatalError added in v0.0.6

func (l *MockLogger) FatalError(e error, format string, words ...interface{})

FatalError log message

func (*MockLogger) Info added in v0.0.6

func (l *MockLogger) Info(format string, words ...interface{})

Info log information message

func (MockLogger) Init added in v0.0.6

func (l MockLogger) Init() Logger

func (*MockLogger) IsTimestampEnabled added in v0.0.6

func (l *MockLogger) IsTimestampEnabled() bool

func (*MockLogger) Log added in v0.0.6

func (l *MockLogger) Log(format string, level Level, words ...interface{})

func (*MockLogger) LogError added in v0.0.6

func (l *MockLogger) LogError(message error)

LogError log message

func (*MockLogger) LogHighlight added in v0.0.6

func (l *MockLogger) LogHighlight(format string, level Level, highlightColor strcolor.ColorCode, words ...interface{})

LogHighlight Log information message

func (*MockLogger) LogIcon added in v0.0.6

func (l *MockLogger) LogIcon(icon LoggerIcon, format string, level Level, words ...interface{})

Log Log information message

func (*MockLogger) Notice added in v0.0.6

func (l *MockLogger) Notice(format string, words ...interface{})

Notice log message

func (*MockLogger) Success added in v0.0.6

func (l *MockLogger) Success(format string, words ...interface{})

Success log message

func (*MockLogger) TaskError added in v0.0.6

func (l *MockLogger) TaskError(format string, isComplete bool, words ...interface{})

TaskError log message

func (*MockLogger) TaskSuccess added in v0.0.6

func (l *MockLogger) TaskSuccess(format string, isComplete bool, words ...interface{})

TaskSuccess log message

func (*MockLogger) TaskWarn added in v0.0.6

func (l *MockLogger) TaskWarn(format string, words ...interface{})

TaskWarn log message

func (*MockLogger) Trace added in v0.0.6

func (l *MockLogger) Trace(format string, words ...interface{})

Trace log message

func (*MockLogger) UseCorrelationId added in v0.0.6

func (l *MockLogger) UseCorrelationId(value bool)

func (*MockLogger) UseIcons added in v0.0.6

func (l *MockLogger) UseIcons(value bool)

func (*MockLogger) UseTimestamp added in v0.0.6

func (l *MockLogger) UseTimestamp(value bool)

func (*MockLogger) Warn added in v0.0.6

func (l *MockLogger) Warn(format string, words ...interface{})

Warn log message

type MockedLogMessage added in v0.0.6

type MockedLogMessage struct {
	Message string
	Level   string
	Icon    string
}

Jump to

Keyboard shortcuts

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