Skip to content

cd365/logger

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FOR EXAMPLE

package main

import (
	"fmt"
	"github.com/cd365/logger/v8"
	"github.com/rs/zerolog"
	"time"
)

func main() {

	l := logger.NewLogger(nil)

	fmt.Println(l.GetLevel().String())

	l.SetLevel(zerolog.DebugLevel)

	fmt.Println(l.GetLevel().String())

	l.CustomContext(func(ctx zerolog.Context) zerolog.Logger {
		return ctx.
			Str("project", "project-a").
			Str("module", "module-a").
			Int64("program_start_at", time.Now().Unix()).
			Logger()
	})

	// Note the difference in the `unix_milli` values in the two log outputs
	l.CustomEvent(func(event *zerolog.Event, level zerolog.Level) *zerolog.Event {
		return event.Int64("unix_milli", time.Now().UnixMilli())
	})

	// callers
	l.CustomEvent(func(event *zerolog.Event, level zerolog.Level) *zerolog.Event {
		if level > zerolog.InfoLevel {
			callers := logger.CalledLists(logger.Callers(0))
			fmt.Print(string(callers))
			event.Bytes("callers", callers)
		}
		return event
	})

	l.Info().Msg("123")

	<-time.After(time.Second * 2)

	l.Error().Err(fmt.Errorf("321")).Send()

	l.Trace().Msg("000")

}

About

logger with TRACE, DEBUG, INFO, WARN, ERROR, FATAL level

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages