logger

package module
v1.0.7 Latest Latest
Warning

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

Go to latest
Published: Apr 14, 2020 License: MIT Imports: 7 Imported by: 1

README

logger

combine zerolog and file-rotatelogs.

Install

go get -u github.com/RocksonZeta/logger

Example

package logger_test

import (
	"errors"
	"testing"

	"github.com/RocksonZeta/logger"
)

var options = logger.Options{Console: true, Level: "debug", File: "test_log.%Y%m%d.log", ForceNewFile: true, MaxAge: 1, ShowLocalIp: true}
var serviceLog logger.FileLogger = logger.NewLogger(options)

var log = serviceLog.WithPkg("good/service/users")

func TestLog(t *testing.T) {
	log.Trace().M("User").Func("TestWrite").Interface("user", User{Id: 1}).Send()
	log.Debug().M("User").Func("TestWrite").Str("sql", "select * from User where id=?").Int("id", 1).Send()
	log.Info().M("User").Func("Signin").Str("uid", "1").Msg("hello")
	log.Warn().M("User").Func("Signin").Str("uid", "1").Msg("bad user")
	log.Error().M("User").Stack().Err(errors.New("oh no")).Send()
}

type User struct {
	Id int
}

Documentation

Index

Constants

This section is empty.

Variables

View Source
var FuncName = "func"
View Source
var LocalIpField = "localIps"
View Source
var ModuleField = "module"
View Source
var PackageField = "package"
View Source
var TimeFormat = "2006-01-02 15:04:05.999"

TimeFormat default timefield format

Functions

This section is empty.

Types

type Event

type Event struct {
	*zerolog.Event
}

method wrap ----------------------

func (*Event) Err added in v1.0.4

func (e *Event) Err(err error) *Event

func (*Event) F added in v1.0.7

func (e *Event) F(funcName string) *Event

func (*Event) Func

func (e *Event) Func(funcName string) *Event

Func add func field in log

func (*Event) Int added in v1.0.7

func (e *Event) Int(key string, val int) *Event

func (*Event) Int32 added in v1.0.7

func (e *Event) Int32(key string, val int32) *Event

func (*Event) Int64 added in v1.0.7

func (e *Event) Int64(key string, val int64) *Event

func (*Event) Interface added in v1.0.4

func (e *Event) Interface(key string, value interface{}) *Event

func (*Event) M added in v1.0.7

func (e *Event) M(name string) *Event

func (*Event) Module added in v1.0.7

func (e *Event) Module(name string) *Event

func (*Event) P added in v1.0.7

func (e *Event) P(name string) *Event

func (*Event) Pkg added in v1.0.7

func (e *Event) Pkg(name string) *Event

func (*Event) Stack added in v1.0.4

func (e *Event) Stack() *Event

func (*Event) Str added in v1.0.4

func (e *Event) Str(key, val string) *Event

type FileLogger

type FileLogger struct {
	zerolog.Logger
	// contains filtered or unexported fields
}

func NewLogger

func NewLogger(options Options) FileLogger

NewLogger

func (FileLogger) Debug

func (f FileLogger) Debug() *Event

func (FileLogger) DebugEnabled added in v1.0.2

func (f FileLogger) DebugEnabled() bool

func (FileLogger) Error

func (f FileLogger) Error() *Event

func (FileLogger) ErrorEnabled added in v1.0.2

func (f FileLogger) ErrorEnabled() bool

func (FileLogger) Fatal

func (f FileLogger) Fatal() *Event

func (FileLogger) FatalEnabled added in v1.0.2

func (f FileLogger) FatalEnabled() bool

func (FileLogger) Fork

func (f FileLogger) Fork(pkg, mod string) FileLogger

Fork new log for module

func (FileLogger) Info

func (f FileLogger) Info() *Event

func (FileLogger) InfoEnabled added in v1.0.2

func (f FileLogger) InfoEnabled() bool

func (FileLogger) Panic

func (f FileLogger) Panic() *Event

func (FileLogger) Trace

func (f FileLogger) Trace() *Event

func (FileLogger) TraceEnabled added in v1.0.2

func (f FileLogger) TraceEnabled() bool

func (FileLogger) Warn

func (f FileLogger) Warn() *Event

func (FileLogger) WarnEnabled added in v1.0.2

func (f FileLogger) WarnEnabled() bool

func (FileLogger) WithLevel

func (f FileLogger) WithLevel(level zerolog.Level) *Event

func (FileLogger) WithPkg added in v1.0.7

func (f FileLogger) WithPkg(pkg string) FileLogger

func (FileLogger) Write added in v1.0.1

func (f FileLogger) Write(p []byte) (n int, err error)

type ModuleHook

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

func (ModuleHook) Run

func (h ModuleHook) Run(e *zerolog.Event, level zerolog.Level, msg string)

type Options

type Options struct {
	Console bool
	Level   string
	//File eg. access_log.%Y%m%d
	File string
	//current log file link
	FileLink     string
	MaxAge       float64 // days
	RotationTime float64 //days
	ForceNewFile bool
	ShowLocalIp  bool
}

Jump to

Keyboard shortcuts

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