Files
tgex-backend/tg_parser/main.go
Artem Tsyrulnikov 5473b26787 refactor
2026-01-19 12:50:36 +03:00

57 lines
1.1 KiB
Go

package main
import (
"context"
"os"
"time"
"github.com/rs/zerolog"
"github.com/rs/zerolog/log"
"github.com/TelegramExchange/tgex-backend/tg_parser/config"
"github.com/TelegramExchange/tgex-backend/tg_parser/internal/app"
)
func main() {
c, err := config.New()
if err != nil {
log.Fatal().Err(err).Msg("config.New")
}
initLogger(c.Logger)
log.Info().Msg("parser starting")
log.Info().Msg("parser initialized")
ctx := context.Background()
if err := app.Run(ctx, c); err != nil {
log.Error().Err(err).Msg("app.Run")
}
}
func initLogger(c config.LoggerConfig) {
zerolog.TimeFieldFormat = time.RFC3339
level := zerolog.InfoLevel
if parsedLevel, err := zerolog.ParseLevel(c.Level); err == nil {
level = parsedLevel
}
zerolog.SetGlobalLevel(level)
log.Logger = zerolog.New(os.Stdout).With().
Timestamp().
Logger().
Level(level)
if c.PrettyConsole {
log.Logger = zerolog.New(zerolog.ConsoleWriter{Out: os.Stdout, TimeFormat: "15:04:05"}).
With().
Timestamp().
Logger().
Level(level)
}
log.Info().Msg("Logger initialized")
}