hiboot: hidevops.io/hiboot/pkg/log Index | Examples | Files

package log

import "hidevops.io/hiboot/pkg/log"

Package log provides logging with level debug, info, warn, error, fatal.

Package log provides logging

This example shows the log usages

Code:


log.SetLevel(log.DebugLevel)

log.Debug("this is debug prints")

Index

Examples

Package Files

doc.go logging.go

Constants

const (
    DebugLevel = "debug"
    InfoLevel  = "info"
    WarnLevel  = "warn"
    ErrorLevel = "error"
    FatalLevel = "fatal"
    Disable    = "disable"
)

Available level names are: "disable" "fatal" "error" "warn" "info" "debug"

func AddOutput Uses

func AddOutput(writers ...io.Writer)

AddOutput adds one or more `io.Writer` to the golog.Logger's Printer.

If one of the "writers" is not a terminal-based (i.e File) then colors will be disabled for all outputs.

func Child Uses

func Child(name string) *golog.Logger

Child (creates if not exists and) returns a new child Logger based on the default package-level logger instance.

Can be used to separate logs by category.

func Debug Uses

func Debug(v ...interface{})

Debug will print when logger's Level is debug.

func Debugf Uses

func Debugf(format string, args ...interface{})

Debugf will print when logger's Level is debug.

func Error Uses

func Error(v ...interface{})

Error will print only when logger's Level is error, warn, info or debug.

func Errorf Uses

func Errorf(format string, args ...interface{})

Errorf will print only when logger's Level is error, warn, info or debug.

func Fatal Uses

func Fatal(v ...interface{})

Fatal `os.Exit(1)` exit no matter the level of the logger. If the logger's level is fatal, error, warn, info or debug then it will print the log message too.

func Fatalf Uses

func Fatalf(format string, args ...interface{})

Fatalf will `os.Exit(1)` no matter the level of the logger. If the logger's level is fatal, error, warn, info or debug then it will print the log message too.

func Handle Uses

func Handle(handler golog.Handler)

Handle adds a log handler to the default logger.

Handlers can be used to intercept the message between a log value and the actual print operation, it's called when one of the print functions called. If it's return value is true then it means that the specific handler handled the log by itself therefore no need to proceed with the default behavior of printing the log to the specified logger's output.

It stops on the handler which returns true firstly. The `Log` value holds the level of the print operation as well.

func Hijack Uses

func Hijack(hijacker func(ctx *pio.Ctx))

Hijack adds a hijacker to the low-level logger's Printer. If you need to implement such as a low-level hijacker manually, then you have to make use of the pio library.

func Info Uses

func Info(v ...interface{})

Info will print when logger's Level is info or debug.

func Infof Uses

func Infof(format string, args ...interface{})

Infof will print when logger's Level is info or debug.

func Install Uses

func Install(logger golog.ExternalLogger)

Install receives an external logger and automatically adapts its print functions.

Install adds a golog handler to support third-party integrations, it can be used only once per `golog#Logger` instance.

For example, if you want to print using a logrus logger you can do the following: `golog.Install(logrus.StandardLogger())`

Look `golog#Handle` for more.

func InstallStd Uses

func InstallStd(logger golog.StdLogger)

InstallStd receives a standard logger and automatically adapts its print functions.

Install adds a golog handler to support third-party integrations, it can be used only once per `golog#Logger` instance.

Example Code:

import "log"
myLogger := log.New(os.Stdout, "", 0)
InstallStd(myLogger)

Look `golog#Handle` for more.

func Logf Uses

func Logf(level golog.Level, format string, args ...interface{})

Logf prints a leveled log message to the output. This method can be used to use custom log levels if needed. It adds a new line in the end.

func NewLine Uses

func NewLine(newLineChar string)

NewLine can override the default package-level line breaker, "\n". It should be called (in-sync) before the print or leveled functions.

See `github.com/kataras/pio#NewLine` and `Logger#NewLine` too.

func Print Uses

func Print(v ...interface{})

Print prints a log message without levels and colors.

func Println Uses

func Println(v ...interface{})

Println prints a log message without levels and colors. It adds a new line at the end.

func Reset Uses

func Reset()

Reset re-sets the default logger to an empty one.

func Scan Uses

func Scan(r io.Reader) (cancel func())

Scan scans everything from "r" and prints its new contents to the logger's Printer's Output, forever or until the returning "cancel" is fired, once.

func SetLevel Uses

func SetLevel(levelName string)

SetLevel alternatively you can use the exported `golog.Level` field, i.e `golog.Level = golog.ErrorLevel`

func SetOutput Uses

func SetOutput(w io.Writer)

SetOutput overrides the golog.Logger's Printer's output with another `io.Writer`.

func SetPrefix Uses

func SetPrefix(s string) *golog.Logger

SetPrefix sets a prefix for the default package-level Logger.

The prefix is the first space-separated word that is being presented to the output. It's written even before the log level text.

Returns itself.

func SetTimeFormat Uses

func SetTimeFormat(s string)

SetTimeFormat sets time format for logs, if "s" is empty then time representation will be off.

func Warn Uses

func Warn(v ...interface{})

Warn will print when logger's Level is warn, info or debug.

func Warnf Uses

func Warnf(format string, args ...interface{})

Warnf will print when logger's Level is warn, info or debug.

Package log imports 5 packages (graph) and is imported by 36 packages. Updated 2019-05-20. Refresh now. Tools for package owners.