ensure that activity log keep alive thread is started per worker

This commit is contained in:
Sebastian Jambor 2023-04-18 19:20:11 +00:00
parent 3d34d5d2b2
commit fd2f4ba76c
2 changed files with 15 additions and 9 deletions

View file

@ -18,6 +18,7 @@ class ActivityLogger
rescue rescue
puts 'rescued' puts 'rescued'
logger.close logger.close
ActivityLogger.unregister(id, logger)
puts 'closed logger' puts 'closed logger'
end end
end end
@ -26,14 +27,17 @@ class ActivityLogger
@@loggers.clear @@loggers.clear
end end
Thread.new { def self.start_keep_alive_thread
while true Thread.new {
event = ActivityLogEvent.new('keep-alive', nil, nil, nil) while true
@@loggers.each_key do |key| event = ActivityLogEvent.new('keep-alive', nil, nil, nil)
ActivityLogger.log(key, event) puts "writing keep-alive"
end @@loggers.each_key do |key|
ActivityLogger.log(key, event)
end
sleep 10 sleep 10
end end
} }
end
end end

View file

@ -25,6 +25,8 @@ on_worker_boot do
Thread.new { Thread.new {
ActivityLogSubscriber.new.start ActivityLogSubscriber.new.start
} }
ActivityLogger.start_keep_alive_thread
end end
plugin :tmp_restart plugin :tmp_restart