Add logger constructor and replace graceful context

Signed-off-by: Evgeniy Kulikov <kim@nspcc.ru>
This commit is contained in:
Evgeniy Kulikov 2020-11-24 10:06:39 +03:00
parent 8a3d2ba909
commit de77d7838e

View file

@ -1,10 +1,47 @@
package main
import (
"github.com/nspcc-dev/cdn-neofs-sdk/grace"
"github.com/nspcc-dev/cdn-neofs-sdk/logger"
"github.com/spf13/viper"
"go.uber.org/zap"
)
func newLogger(v *viper.Viper) *zap.Logger {
options := []logger.Option{
logger.WithLevel(v.GetString("logger.level")),
logger.WithTraceLevel(v.GetString("logger.trace_level")),
logger.WithFormat(v.GetString("logger.format")),
logger.WithSamplingInitial(v.GetInt("logger.sampling.initial")),
logger.WithSamplingThereafter(v.GetInt("logger.sampling.thereafter")),
logger.WithAppName(v.GetString("app_name")),
logger.WithAppVersion(v.GetString("app_version")),
}
if v.GetBool("logger.no_caller") {
options = append(options, logger.WithoutCaller())
}
if v.GetBool("logger.no_disclaimer") {
options = append(options, logger.WithoutDisclaimer())
}
l, err := logger.New(options...)
if err != nil {
panic(err)
}
return l
}
func main() {
var (
v = newSettings()
l = newLogger(v)
g = newGracefulContext(l)
g = grace.Context(l)
a = newApp(g, l, v)
)