improve logging set-up: return pointer, log set-up errors
This commit is contained in:
parent
2295213a4a
commit
4549cb3be3
4 changed files with 11 additions and 9 deletions
2
.gitignore
vendored
2
.gitignore
vendored
|
@ -1,2 +1,2 @@
|
|||
bin*
|
||||
scopes.log
|
||||
*.log
|
||||
|
|
|
@ -4,6 +4,6 @@ import "git.sr.ht/~cco/go-scopes/config"
|
|||
|
||||
func Overrides() config.Settings {
|
||||
return config.Settings{
|
||||
HOME: "/home/scopes/app",
|
||||
//HOME: "/home/scopes/app",
|
||||
}
|
||||
}
|
||||
|
|
|
@ -26,15 +26,13 @@ func Setup(ctx lib.Context, cfg *Cfg, home string) {
|
|||
return // use unchanged predefined logger
|
||||
}
|
||||
if logger, err := New(cfg, home); err != nil {
|
||||
//panic(err)
|
||||
logger.Err(err)
|
||||
//GetLogger(nil).Err(err)
|
||||
panic("error when trying to set up logger.")
|
||||
} else {
|
||||
*globalLogger = logger
|
||||
*globalLogger = *logger
|
||||
}
|
||||
}
|
||||
|
||||
func New(cfg *Cfg, home string) (Logger, error) {
|
||||
func New(cfg *Cfg, home string) (*Logger, error) {
|
||||
home, _ = filepath.Abs(home)
|
||||
fn := cfg.Logfile
|
||||
if fn == "" {
|
||||
|
@ -45,9 +43,11 @@ func New(cfg *Cfg, home string) (Logger, error) {
|
|||
fmt.Println("logfile:", fn)
|
||||
f, err := os.OpenFile(fn, os.O_WRONLY|os.O_APPEND|os.O_CREATE, 0664)
|
||||
if err != nil {
|
||||
return *globalLogger, err
|
||||
GetLogger(nil).Err(err).Msg("logging.New: open log file")
|
||||
return nil, err
|
||||
}
|
||||
return zerolog.New(f).With().Timestamp().Logger(), nil
|
||||
logger := zerolog.New(f).With().Timestamp().Logger()
|
||||
return &logger, nil
|
||||
}
|
||||
|
||||
func GetLogger(ctx lib.Context) *Logger {
|
||||
|
|
|
@ -2,6 +2,7 @@ package scopes_test
|
|||
|
||||
import (
|
||||
"fmt"
|
||||
"os"
|
||||
tbase "testing"
|
||||
|
||||
"git.sr.ht/~cco/go-scopes/app"
|
||||
|
@ -12,6 +13,7 @@ import (
|
|||
)
|
||||
|
||||
func TestConfig(tb *tbase.T) {
|
||||
os.Remove("log/scopes.log") // make sure we start with a fresh log file
|
||||
t := testing.SetUpApp(tb, etc.Config())
|
||||
t.Run("app", AppTest)
|
||||
t.Run("config", ConfigTest)
|
||||
|
|
Loading…
Add table
Reference in a new issue