@@ -50,7 +50,7 @@ def inspect
5050
5151 def call ( original_thread ) # :nodoc:
5252 begin
53- @server . logger . error ( "#{ @worker . to_log } timed out, exiting" )
53+ @server . logger . error ( "worker= #{ @worker . nr } pid= #{ @worker . pid } timed out, exiting" )
5454 if @callback
5555 @callback . call ( @server , @worker , Info . new ( original_thread , @rack_env ) )
5656 end
@@ -363,19 +363,19 @@ def monitor_loop(sleep = true)
363363 when Message ::WorkerSpawned
364364 worker = @children . update ( message )
365365 # TODO: should we send a message to the worker to acknowledge?
366- logger . info "#{ worker . to_log } registered"
366+ logger . info "worker= #{ worker . nr } pid= #{ worker . pid } gen= #{ worker . generation } registered"
367367 when Message ::MoldSpawned
368368 new_mold = @children . update ( message )
369- logger . info ( "#{ new_mold . to_log } spawned" )
369+ logger . info ( "mold pid= #{ new_mold . pid } gen= #{ new_mold . generation } spawned" )
370370 when Message ::ServiceSpawned
371371 new_service = @children . update ( message )
372- logger . info ( "#{ new_service . to_log } spawned" )
372+ logger . info ( "service pid= #{ new_service . pid } gen= #{ new_service . generation } spawned" )
373373 when Message ::MoldReady
374374 old_molds = @children . molds
375375 new_mold = @children . update ( message )
376- logger . info ( "#{ new_mold . to_log } ready" )
376+ logger . info ( "mold pid= #{ new_mold . pid } gen= #{ new_mold . generation } ready" )
377377 old_molds . each do |old_mold |
378- logger . info ( "Terminating old #{ old_mold . to_log } " )
378+ logger . info ( "Terminating old mold pid= #{ old_mold . pid } gen= #{ old_mold . generation } " )
379379 old_mold . soft_kill ( :TERM )
380380 end
381381 else
@@ -413,7 +413,7 @@ def stop(graceful = true)
413413 end
414414
415415 def worker_exit ( worker )
416- logger . info "#{ worker . to_log } exiting"
416+ logger . info "worker= #{ worker . nr } pid= #{ worker . pid } gen= #{ worker . generation } exiting"
417417 proc_name status : "exiting"
418418
419419 if @before_worker_exit
@@ -427,7 +427,7 @@ def worker_exit(worker)
427427 end
428428
429429 def service_exit ( service )
430- logger . info "#{ service . to_log } exiting"
430+ logger . info "service pid= #{ service . pid } gen= #{ service . generation } exiting"
431431 proc_name status : "exiting"
432432
433433 if @before_service_worker_exit
@@ -548,7 +548,11 @@ def hard_timeout(child)
548548 end
549549 end
550550
551- logger . error "#{ child . to_log } timed out, killing"
551+ if child . mold?
552+ logger . error "mold pid=#{ child . pid } gen=#{ child . generation } timed out, killing"
553+ else
554+ logger . error "worker=#{ child . nr } pid=#{ child . pid } gen=#{ child . generation } timed out, killing"
555+ end
552556 @children . hard_kill ( @timeout_signal . call ( child . pid ) , child ) # take no prisoners for hard timeout violations
553557 end
554558
@@ -579,7 +583,7 @@ def after_fork_internal
579583 end
580584
581585 def spawn_worker ( worker , detach :)
582- logger . info ( "#{ worker . to_log } spawning..." )
586+ logger . info ( "worker= #{ worker . nr } gen= #{ worker . generation } spawning..." )
583587
584588 # We set the deadline before spawning the child so that if for some
585589 # reason it gets stuck before reaching the worker loop,
@@ -642,7 +646,7 @@ def service_loop(service)
642646 end
643647
644648 def spawn_service ( service , detach :)
645- logger . info ( "#{ service . to_log } spawning..." )
649+ logger . info ( "service gen= #{ service . generation } spawning..." )
646650
647651 # We set the deadline before spawning the child so that if for some
648652 # reason it gets stuck before reaching the worker loop,
@@ -755,9 +759,9 @@ def restart_outdated_workers
755759 if service = @children . service
756760 if service . outdated?
757761 if service . soft_kill ( :TERM )
758- logger . info ( "Sent SIGTERM to #{ service . to_log } " )
762+ logger . info ( "Sent SIGTERM to service pid= #{ service . pid } gen= #{ service . generation } " )
759763 else
760- logger . info ( "Failed to send SIGTERM to #{ service . to_log } " )
764+ logger . info ( "Failed to send SIGTERM to service pid= #{ service . pid } gen= #{ service . generation } " )
761765 end
762766 end
763767 end
@@ -766,10 +770,10 @@ def restart_outdated_workers
766770 outdated_workers = @children . workers . select { |w | !w . exiting? && w . generation < @children . mold . generation }
767771 outdated_workers . each do |worker |
768772 if worker . soft_kill ( :TERM )
769- logger . info ( "Sent SIGTERM to #{ worker . to_log } " )
773+ logger . info ( "Sent SIGTERM to worker= #{ worker . nr } pid= #{ worker . pid } gen= #{ worker . generation } " )
770774 workers_to_restart -= 1
771775 else
772- logger . info ( "Failed to send SIGTERM to #{ worker . to_log } " )
776+ logger . info ( "Failed to send SIGTERM to worker= #{ worker . nr } pid= #{ worker . pid } gen= #{ worker . generation } " )
773777 end
774778 break if workers_to_restart <= 0
775779 end
@@ -981,7 +985,7 @@ def worker_loop(worker)
981985 if Info . fork_safe?
982986 spawn_mold ( worker )
983987 else
984- logger . error ( "#{ worker . to_log } is no longer fork safe, can't refork" )
988+ logger . error ( "worker= #{ worker . nr } gen= #{ worker . generation } is no longer fork safe, can't refork" )
985989 end
986990 when Message
987991 worker . update ( client )
@@ -1001,7 +1005,7 @@ def worker_loop(worker)
10011005 if @refork_condition . met? ( worker , logger )
10021006 proc_name status : "requests: #{ worker . requests_count } , spawning mold"
10031007 if spawn_mold ( worker )
1004- logger . info ( "#{ worker . to_log } refork condition met, promoting ourselves" )
1008+ logger . info ( "worker= #{ worker . nr } gen= #{ worker . generation } Refork condition met, promoting ourselves" )
10051009 end
10061010 @refork_condition . backoff!
10071011 end
@@ -1064,11 +1068,11 @@ def mold_loop(mold)
10641068 spawn_worker ( Worker . new ( message . nr , generation : mold . generation ) , detach : true )
10651069 rescue ForkFailure
10661070 if retries > 0
1067- @logger . fatal ( "#{ mold . to_log } failed to spawn a worker, retrying " )
1071+ @logger . fatal ( "mold pid= #{ mold . pid } gen= #{ mold . generation } Failed to spawn a worker. Retrying. " )
10681072 retries -= 1
10691073 retry
10701074 else
1071- @logger . fatal ( "#{ mold . to_log } failed to spawn a worker twice in a row - corrupted mold process?" )
1075+ @logger . fatal ( "mold pid= #{ mold . pid } gen= #{ mold . generation } Failed to spawn a worker twice in a row. Corrupted mold process?" )
10721076 Process . exit ( 1 )
10731077 end
10741078 rescue => error
@@ -1080,11 +1084,11 @@ def mold_loop(mold)
10801084 spawn_service ( Service . new ( generation : mold . generation ) , detach : true )
10811085 rescue ForkFailure
10821086 if retries > 0
1083- @logger . fatal ( "#{ mold . to_log } failed to spawn a service, retrying " )
1087+ @logger . fatal ( "mold pid= #{ mold . pid } gen= #{ mold . generation } Failed to spawn a service. Retrying. " )
10841088 retries -= 1
10851089 retry
10861090 else
1087- @logger . fatal ( "#{ mold . to_log } failed to spawn a service twice in a row - corrupted mold process?" )
1091+ @logger . fatal ( "mold pid= #{ mold . pid } gen= #{ mold . generation } Failed to spawn a service twice in a row. Corrupted mold process?" )
10881092 Process . exit ( 1 )
10891093 end
10901094 rescue => error
0 commit comments