Files
hatchet/pkg/logger/stderr.go
T
abelanger5 7c3ddfca32 feat: api server extensions (#614)
* feat: allow extending the api server

* chore: remove internal packages to pkg

* chore: update db_gen.go

* fix: expose auth

* fix: move logger to pkg

* fix: don't generate gitignore for prisma client

* fix: allow extensions to register their own api spec

* feat: expose pool on server config

* fix: nil pointer exception on empty opts

* fix: run.go file
2024-06-19 09:36:13 -04:00

51 lines
853 B
Go

package logger
import (
"io"
"os"
"github.com/rs/zerolog"
"github.com/hatchet-dev/hatchet/pkg/config/shared"
"time"
)
func init() {
zerolog.TimeFieldFormat = time.RFC3339Nano
}
func NewDefaultLogger(service string) zerolog.Logger {
return NewStdErr(&shared.LoggerConfigFile{}, service)
}
func NewStdErr(cf *shared.LoggerConfigFile, service string) zerolog.Logger {
lvl := zerolog.DebugLevel
var err error
if cf.Level != "" {
lvl, err = zerolog.ParseLevel(cf.Level)
if err != nil {
panic(err)
}
}
var out io.Writer = os.Stderr
if cf.Format == "console" {
out = zerolog.ConsoleWriter{
Out: os.Stderr,
TimeFormat: "2006-01-02T15:04:05.999Z07:00",
}
}
l := zerolog.New(out).Level(lvl)
l = l.With().Timestamp().Logger()
if service != "" {
l = l.With().Str("service", service).Logger()
}
return l
}