Skip to content

zcubbs/zlogger

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

zlogger

This is an interface for Loggers in Go. It is inspired by go-logger.

Usage

Install

go get github.com/zcubbs/zlogger

Logrus

logrus

package main

import (
	"os"

	"github.com/zcubbs/zlogger/pkg/logger"
	"github.com/sirupsen/logrus"
)

func main() {
	logrusLog := logrus.New()
	logrusLog.SetFormatter(&logrus.JSONFormatter{})
	logrusLog.SetOutput(os.Stdout)
	logrusLog.SetLevel(logrus.DebugLevel)
	log, _ := logger.NewLogrusLogger(logrusLog)
	logger.ReplaceGlobals(log)
        //anywhere in your code you can now use logger.L() as its globally set
	logger.L().WithFields(logger.Fields{
		"foo": "bar",
	}).Info("direct")
}

Zap

zap

package main

import (
	"os"

	"github.com/zcubbs/zlogger/pkg/logger"
	"go.uber.org/zap"
	"go.uber.org/zap/zapcore"
)

func main() {
	consoleEncoder := zapcore.NewJSONEncoder(zap.NewDevelopmentEncoderConfig())
	core := zapcore.NewCore(consoleEncoder,
		zapcore.Lock(zapcore.AddSync(os.Stderr)),
		zapcore.DebugLevel)
	zapLogger := zap.New(core)
	log, _ := logger.NewZapLogger(zapLogger)
 	logger.ReplaceGlobals(log)
        //anywhere in your code you can now use logger.L() as its globally set
	logger.L().WithFields(logger.Fields{
		"foo": "bar",
	}).Info("direct")
}

License

MIT

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages