code: func (m *Metrics) OnStartup() error {
  	ln, err := net.Listen("tcp", m.Addr)
  	if err != nil {
  		log.Printf("[ERROR] Failed to start metrics handler: %s", err)
  		return err
  	}
  
  	m.ln = ln
  	ListenAddr = m.ln.Addr().String()
  
  	m.mux = http.NewServeMux()
  	m.mux.Handle("/metrics", prometheus.Handler())
  
  	go func() {
  		http.Serve(m.ln, m.mux)
  	}()
  	return nil
  }
docs: // OnStartup sets up the metrics on startup.