fix: enable metrics before loading services

Move xmetrics.Enable(true) from run() to Start(), before loader.Load(),
so that listener wrappers can observe the enabled state at Init time
rather than after wrapper decisions have already been made.
master
ginuerzh 2026-06-21 20:35:19 +08:00
parent 43dd0a6958
commit b628475871
1 changed files with 6 additions and 2 deletions

View File

@ -62,6 +62,12 @@ func (p *program) Start() error {
config.Set(cfg)
// Enable metrics before loading services so that listener wrappers
// can observe the enabled state at Init time.
if cfg.Metrics != nil && cfg.Metrics.Addr != "" {
xmetrics.Enable(true)
}
if err := loader.Load(cfg); err != nil {
return err
}
@ -121,8 +127,6 @@ func (p *program) run(cfg *config.Config) error {
p.srvMetrics = s
xmetrics.Enable(true)
go func() {
defer s.Close()