@@ -68,7 +68,7 @@ func (cfg *Config) RegisterFlags(f *flag.FlagSet) {
68
68
// New makes a new Server
69
69
func New (cfg Config , log log.Logger , tms * targets.TargetManagers ) (Server , error ) {
70
70
if cfg .Disable {
71
- return noopServer { log : log } , nil
71
+ return newNoopServer ( log ) , nil
72
72
}
73
73
wws , err := serverww .New (cfg .Config )
74
74
if err != nil {
@@ -243,13 +243,24 @@ func computeExternalURL(u string, port int) (*url.URL, error) {
243
243
return eu , nil
244
244
}
245
245
246
- type noopServer struct { log log.Logger }
246
+ type noopServer struct {
247
+ log log.Logger
248
+ sigs chan os.Signal
249
+ }
247
250
248
- func (s noopServer ) Run () error {
249
- sigs := make (chan os.Signal , 1 )
250
- signal .Notify (sigs , syscall .SIGINT , syscall .SIGTERM )
251
- sig := <- sigs
251
+ func newNoopServer (log log.Logger ) * noopServer {
252
+ return & noopServer {
253
+ log : log ,
254
+ sigs : make (chan os.Signal , 1 ),
255
+ }
256
+ }
257
+
258
+ func (s * noopServer ) Run () error {
259
+ signal .Notify (s .sigs , syscall .SIGINT , syscall .SIGTERM )
260
+ sig := <- s .sigs
252
261
level .Info (s .log ).Log ("msg" , "received shutdown signal" , "sig" , sig )
253
262
return nil
254
263
}
255
- func (noopServer ) Shutdown () {}
264
+ func (s * noopServer ) Shutdown () {
265
+ s .sigs <- syscall .SIGTERM
266
+ }
0 commit comments