diff options
| author | Jeff Halter <868228+jhalter@users.noreply.github.com> | 2025-06-30 14:10:23 -0700 |
|---|---|---|
| committer | Jeff Halter <868228+jhalter@users.noreply.github.com> | 2025-06-30 14:10:23 -0700 |
| commit | 043e270a03f4ffff6d7115bd7ca5083a9eb80e46 (patch) | |
| tree | c465d1e972a0dd24fdedfd25ff26d3a394048a28 /cmd/mobius-hotline-server/main.go | |
| parent | 437415ca92a98783d03e71c689bdbb58fe0a8d51 (diff) | |
Improve error handling consistency in main.go
- Fix incorrect error message for banner loading
- Convert all error logging to structured format
- Remove server shutdown during config reload failures
Diffstat (limited to 'cmd/mobius-hotline-server/main.go')
| -rw-r--r-- | cmd/mobius-hotline-server/main.go | 25 |
1 files changed, 12 insertions, 13 deletions
diff --git a/cmd/mobius-hotline-server/main.go b/cmd/mobius-hotline-server/main.go index afad4d1..1ba11ae 100644 --- a/cmd/mobius-hotline-server/main.go +++ b/cmd/mobius-hotline-server/main.go @@ -59,11 +59,11 @@ func main() { if *init { if _, err := os.Stat(path.Join(*configDir, "/config.yaml")); os.IsNotExist(err) { if err := os.MkdirAll(*configDir, 0750); err != nil { - slogger.Error(fmt.Sprintf("error creating config dir: %s", err)) + slogger.Error("Error creating config dir", "err", err) os.Exit(1) } if err := copyDir(path.Join("mobius", "config"), *configDir); err != nil { - slogger.Error(fmt.Sprintf("error copying config dir: %s", err)) + slogger.Error("Error copying config dir", "err", err) os.Exit(1) } slogger.Info("Config dir initialized at " + *configDir) @@ -74,7 +74,7 @@ func main() { config, err := mobius.LoadConfig(path.Join(*configDir, "config.yaml")) if err != nil { - slogger.Error(fmt.Sprintf("Error loading config: %v", err)) + slogger.Error("Error loading config", "err", err) os.Exit(1) } @@ -85,44 +85,44 @@ func main() { hotline.WithConfig(*config), ) if err != nil { - slogger.Error(fmt.Sprintf("Error starting server: %s", err)) + slogger.Error("Error starting server", "err", err) os.Exit(1) } srv.MessageBoard, err = mobius.NewFlatNews(path.Join(*configDir, "MessageBoard.txt")) if err != nil { - slogger.Error(fmt.Sprintf("Error loading message board: %v", err)) + slogger.Error("Error loading message board", "err", err) os.Exit(1) } srv.BanList, err = mobius.NewBanFile(path.Join(*configDir, "Banlist.yaml")) if err != nil { - slogger.Error(fmt.Sprintf("Error loading ban list: %v", err)) + slogger.Error("Error loading ban list", "err", err) os.Exit(1) } srv.ThreadedNewsMgr, err = mobius.NewThreadedNewsYAML(path.Join(*configDir, "ThreadedNews.yaml")) if err != nil { - slogger.Error(fmt.Sprintf("Error loading news: %v", err)) + slogger.Error("Error loading news", "err", err) os.Exit(1) } srv.AccountManager, err = mobius.NewYAMLAccountManager(path.Join(*configDir, "Users/")) if err != nil { - slogger.Error(fmt.Sprintf("Error loading accounts: %v", err)) + slogger.Error("Error loading accounts", "err", err) os.Exit(1) } srv.Agreement, err = mobius.NewAgreement(*configDir, "\r") if err != nil { - slogger.Error(fmt.Sprintf("Error loading agreement: %v", err)) + slogger.Error("Error loading agreement", "err", err) os.Exit(1) } bannerPath := path.Join(*configDir, config.BannerFile) srv.Banner, err = os.ReadFile(bannerPath) if err != nil { - slogger.Error(fmt.Sprintf("Error loading accounts: %v", err)) + slogger.Error("Error loading banner", "err", err) os.Exit(1) } @@ -140,15 +140,14 @@ func main() { } if err := srv.Agreement.(*mobius.Agreement).Reload(); err != nil { - slogger.Error(fmt.Sprintf("Error reloading agreement: %v", err)) - os.Exit(1) + slogger.Error("Error reloading agreement", "err", err) } // Let's try to reload the banner bannerPath := path.Join(*configDir, config.BannerFile) srv.Banner, err = os.ReadFile(bannerPath) if err != nil { - slogger.Error(fmt.Sprintf("Error reloading banner: %v", err)) + slogger.Error("Error reloading banner", "err", err) } } |