DEV: Further sidekiq logging stability improvements
- Open the log file in "append" mode. This avoids issues if the file does not exist (and matches standard rails log behavior) - Correctly parse the interval logging environment variable
This commit is contained in:
parent
3ff0800e50
commit
df474bceee
|
@ -65,7 +65,11 @@ module Jobs
|
||||||
end
|
end
|
||||||
|
|
||||||
def self.raw_log(message)
|
def self.raw_log(message)
|
||||||
@@logger ||= Logger.new("#{Rails.root}/log/sidekiq.log")
|
@@logger ||= begin
|
||||||
|
f = File.open "#{Rails.root}/log/sidekiq.log", "a"
|
||||||
|
f.sync = true
|
||||||
|
Logger.new f
|
||||||
|
end
|
||||||
@@log_queue ||= Queue.new
|
@@log_queue ||= Queue.new
|
||||||
@@log_thread ||= Thread.new do
|
@@log_thread ||= Thread.new do
|
||||||
begin
|
begin
|
||||||
|
@ -99,7 +103,7 @@ module Jobs
|
||||||
begin
|
begin
|
||||||
loop do
|
loop do
|
||||||
sleep interval.to_i
|
sleep interval.to_i
|
||||||
@@active_jobs.each { |j| j.write_to_log if j.current_duration > interval }
|
@@active_jobs.each { |j| j.write_to_log if j.current_duration > interval.to_i }
|
||||||
end
|
end
|
||||||
rescue Exception => e
|
rescue Exception => e
|
||||||
Discourse.warn_exception(e, message: "Sidekiq interval logging thread terminated unexpectedly")
|
Discourse.warn_exception(e, message: "Sidekiq interval logging thread terminated unexpectedly")
|
||||||
|
|
Loading…
Reference in New Issue