diff --git a/cmd/projectreshoot/run.go b/cmd/projectreshoot/run.go index c151eaf..ec530ac 100644 --- a/cmd/projectreshoot/run.go +++ b/cmd/projectreshoot/run.go @@ -3,6 +3,7 @@ package main import ( "context" "fmt" + "git.haelnorr.com/haelnorr/golibh/logger" "io" "net/http" "os" @@ -10,7 +11,6 @@ import ( "projectreshoot/internal/httpserver" "projectreshoot/pkg/config" "projectreshoot/pkg/embedfs" - "projectreshoot/pkg/logging" "sync" "time" diff --git a/go.mod b/go.mod index 6e65741..55987f6 100644 --- a/go.mod +++ b/go.mod @@ -1,6 +1,6 @@ module projectreshoot -go 1.24.0 +go 1.25.5 require ( github.com/a-h/templ v0.3.833 @@ -10,13 +10,14 @@ require ( github.com/mattn/go-sqlite3 v1.14.24 github.com/pkg/errors v0.9.1 github.com/pressly/goose/v3 v3.24.1 - github.com/rs/zerolog v1.33.0 + github.com/rs/zerolog v1.34.0 github.com/stretchr/testify v1.10.0 golang.org/x/crypto v0.33.0 modernc.org/sqlite v1.35.0 ) require ( + git.haelnorr.com/haelnorr/golibh/logger v0.0.0-20251231092003-201af4af7a28 // indirect github.com/davecgh/go-spew v1.1.1 // indirect github.com/dustin/go-humanize v1.0.1 // indirect github.com/mattn/go-colorable v0.1.14 // indirect diff --git a/go.sum b/go.sum index 4e74dcf..e93d55f 100644 --- a/go.sum +++ b/go.sum @@ -1,3 +1,5 @@ +git.haelnorr.com/haelnorr/golibh/logger v0.0.0-20251231092003-201af4af7a28 h1:9Kja2VpN9TU+7NWefoSW40jdBQaLEC2Gklo3uWoWGSk= +git.haelnorr.com/haelnorr/golibh/logger v0.0.0-20251231092003-201af4af7a28/go.mod h1:rn805r6IrjzM/90X8pr9ulkBKqCg01YueivQZNMb/IY= github.com/a-h/templ v0.3.833 h1:L/KOk/0VvVTBegtE0fp2RJQiBm7/52Zxv5fqlEHiQUU= github.com/a-h/templ v0.3.833/go.mod h1:cAu4AiZhtJfBjMY0HASlyzvkrtjnHWPeEsyGK2YYmfk= github.com/coreos/go-systemd/v22 v22.5.0/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSVTIJ3seZv2GcEnc= @@ -43,8 +45,11 @@ github.com/pressly/goose/v3 v3.24.1/go.mod h1:rEWreU9uVtt0DHCyLzF9gRcWiiTF/V+528 github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec h1:W09IVJc94icq4NjY3clb7Lk8O1qJ8BdBEF8z0ibU0rE= github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec/go.mod h1:qqbHyh8v60DhA7CoWK5oRCqLrMHRGoxYCSS9EjAz6Eo= github.com/rs/xid v1.5.0/go.mod h1:trrq9SKmegXys3aeAKXMUTdJsYXVwGY3RLcfgqegfbg= +github.com/rs/xid v1.6.0/go.mod h1:7XoLgs4eV+QndskICGsho+ADou8ySMSjJKDIan90Nz0= github.com/rs/zerolog v1.33.0 h1:1cU2KZkvPxNyfgEmhHAz/1A9Bz+llsdYzklWFzgp0r8= github.com/rs/zerolog v1.33.0/go.mod h1:/7mN4D5sKwJLZQ2b/znpjC3/GQWY/xaDXUM0kKWRHss= +github.com/rs/zerolog v1.34.0 h1:k43nTLIwcTVQAncfCw4KZ2VY6ukYoZaBPNOE8txlOeY= +github.com/rs/zerolog v1.34.0/go.mod h1:bJsvje4Z08ROH4Nhs5iH600c3IkWhwp44iRc54W6wYQ= github.com/sethvargo/go-retry v0.3.0 h1:EEt31A35QhrcRZtrYFDTBg91cqZVnFL2navjDrah2SE= github.com/sethvargo/go-retry v0.3.0/go.mod h1:mNX17F0C/HguQMyMyJxcnU471gOZGxCLyYaFyAZraas= github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA= diff --git a/pkg/logging/logger.go b/pkg/logging/logger.go deleted file mode 100644 index b2810f0..0000000 --- a/pkg/logging/logger.go +++ /dev/null @@ -1,84 +0,0 @@ -package logging - -import ( - "io" - "os" - "path/filepath" - - "github.com/pkg/errors" - "github.com/rs/zerolog" - "github.com/rs/zerolog/pkgerrors" -) - -// Takes a log level as string and converts it to a zerolog.Level interface. -// If the string is not a valid input it will return zerolog.InfoLevel -func GetLogLevel(level string) zerolog.Level { - levels := map[string]zerolog.Level{ - "trace": zerolog.TraceLevel, - "debug": zerolog.DebugLevel, - "info": zerolog.InfoLevel, - "warn": zerolog.WarnLevel, - "error": zerolog.ErrorLevel, - "fatal": zerolog.FatalLevel, - "panic": zerolog.PanicLevel, - } - logLevel, valid := levels[level] - if !valid { - return zerolog.InfoLevel - } - return logLevel -} - -// Returns a pointer to a new log file with the specified path. -// Remember to call file.Close() when finished writing to the log file -func GetLogFile(path string) (*os.File, error) { - logPath := filepath.Join(path, "server.log") - file, err := os.OpenFile( - logPath, - os.O_APPEND|os.O_CREATE|os.O_WRONLY, - 0663, - ) - if err != nil { - return nil, errors.Wrap(err, "os.OpenFile") - } - return file, nil -} - -// Get a pointer to a new zerolog.Logger with the specified level and output -// Can provide a file, writer or both. Must provide at least one of the two -func GetLogger( - logLevel zerolog.Level, - w io.Writer, - logFile *os.File, - logDir string, -) (*zerolog.Logger, error) { - if w == nil && logFile == nil { - return nil, errors.New("No Writer provided for log output.") - } - - zerolog.TimeFieldFormat = zerolog.TimeFormatUnix - zerolog.ErrorStackMarshaler = pkgerrors.MarshalStack - - var consoleWriter zerolog.ConsoleWriter - if w != nil { - consoleWriter = zerolog.ConsoleWriter{Out: w} - } - - var output io.Writer - if logFile != nil { - if w != nil { - output = zerolog.MultiLevelWriter(logFile, consoleWriter) - } else { - output = logFile - } - } else { - output = consoleWriter - } - logger := zerolog.New(output). - With(). - Timestamp(). - Logger(). - Level(logLevel) - - return &logger, nil -}