make gateway reload use new loglevel (#2155)

This commit is contained in:
Cytown
2026-03-30 18:00:18 +08:00
committed by GitHub
parent 010d807e61
commit 275c1012f1
+17 -5
View File
@@ -104,11 +104,13 @@ func Run(debug bool, homePath, configPath string, allowEmptyStartup bool) error
logger.Fatalf("config pre-check failed: %v", err)
}
logger.SetLevelFromString(cfg.Gateway.LogLevel)
// Debug mode permanently overrides the config log level to DEBUG.
if debug {
logger.SetLevel(logger.DEBUG)
fmt.Println("🔍 Debug mode enabled")
} else {
logger.SetLevelFromString(cfg.Gateway.LogLevel)
logger.Infof("Log level set to %q", cfg.Gateway.LogLevel)
}
provider, modelID, err := createStartupProvider(cfg, allowEmptyStartup)
@@ -191,7 +193,7 @@ func Run(debug bool, homePath, configPath string, allowEmptyStartup bool) error
logger.Warn("Config reload skipped: another reload is in progress")
continue
}
err := executeReload(ctx, agentLoop, newCfg, &provider, runningServices, msgBus, allowEmptyStartup)
err := executeReload(ctx, agentLoop, newCfg, &provider, runningServices, msgBus, allowEmptyStartup, debug)
if err != nil {
logger.Errorf("Config reload failed: %v", err)
}
@@ -208,7 +210,7 @@ func Run(debug bool, homePath, configPath string, allowEmptyStartup bool) error
runningServices.reloading.Store(false)
continue
}
err = executeReload(ctx, agentLoop, newCfg, &provider, runningServices, msgBus, allowEmptyStartup)
err = executeReload(ctx, agentLoop, newCfg, &provider, runningServices, msgBus, allowEmptyStartup, debug)
if err != nil {
logger.Errorf("Manual reload failed: %v", err)
} else {
@@ -233,9 +235,10 @@ func executeReload(
runningServices *services,
msgBus *bus.MessageBus,
allowEmptyStartup bool,
debug bool,
) error {
defer runningServices.reloading.Store(false)
return handleConfigReload(ctx, agentLoop, newCfg, provider, runningServices, msgBus, allowEmptyStartup)
return handleConfigReload(ctx, agentLoop, newCfg, provider, runningServices, msgBus, allowEmptyStartup, debug)
}
func createStartupProvider(
@@ -403,6 +406,7 @@ func handleConfigReload(
runningServices *services,
msgBus *bus.MessageBus,
allowEmptyStartup bool,
debug bool,
) error {
logger.Info("🔄 Config file changed, reloading...")
@@ -451,6 +455,14 @@ func handleConfigReload(
}
logger.Info(" ✓ Provider, configuration, and services reloaded successfully (thread-safe)")
// Debug mode permanently overrides the config log level to DEBUG.
if !debug {
// Update log level last so that reload-related info/warn logs above are not suppressed.
logger.SetLevelFromString(newCfg.Gateway.LogLevel)
logger.Infof("Log level changing from current to %q", newCfg.Gateway.LogLevel)
}
return nil
}