Add benchmarks and logging to resque jobs
This commit is contained in:
parent
f3ced6d96c
commit
4da97be84b
10 changed files with 36 additions and 3 deletions
|
|
@ -1,5 +1,6 @@
|
||||||
module Jobs
|
module Jobs
|
||||||
class HttpPost
|
class HttpPost
|
||||||
|
extend ResqueJobLogging
|
||||||
@queue = :http
|
@queue = :http
|
||||||
|
|
||||||
def self.perform(url, body, tries_remaining)
|
def self.perform(url, body, tries_remaining)
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
module Jobs
|
module Jobs
|
||||||
class InviteUser
|
class InviteUser
|
||||||
|
extend ResqueJobLogging
|
||||||
@queue = :mail
|
@queue = :mail
|
||||||
def self.perform(sender_id, email, aspect_id, invite_message)
|
def self.perform(sender_id, email, aspect_id, invite_message)
|
||||||
user = User.find(sender_id)
|
user = User.find(sender_id)
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
module Jobs
|
module Jobs
|
||||||
class MailRequestAcceptance
|
class MailRequestAcceptance
|
||||||
|
extend ResqueJobLogging
|
||||||
@queue = :mail
|
@queue = :mail
|
||||||
def self.perform(recipient_id, sender_id)
|
def self.perform(recipient_id, sender_id)
|
||||||
Notifier.request_accepted(recipient_id, sender_id).deliver
|
Notifier.request_accepted(recipient_id, sender_id).deliver
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
module Jobs
|
module Jobs
|
||||||
class MailRequestReceived
|
class MailRequestReceived
|
||||||
|
extend ResqueJobLogging
|
||||||
@queue = :mail
|
@queue = :mail
|
||||||
def self.perform(recipient_id, sender_id)
|
def self.perform(recipient_id, sender_id)
|
||||||
Notifier.new_request(recipient_id, sender_id).deliver
|
Notifier.new_request(recipient_id, sender_id).deliver
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
module Jobs
|
module Jobs
|
||||||
class PostToServices
|
class PostToServices
|
||||||
|
extend ResqueJobLogging
|
||||||
@queue = :http_service
|
@queue = :http_service
|
||||||
def self.perform(user_id, post_id, url)
|
def self.perform(user_id, post_id, url)
|
||||||
user = User.find_by_id(user_id)
|
user = User.find_by_id(user_id)
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
module Jobs
|
module Jobs
|
||||||
class Receive
|
class Receive
|
||||||
|
extend ResqueJobLogging
|
||||||
@queue = :receive
|
@queue = :receive
|
||||||
def self.perform(user_id, xml, salmon_author_id)
|
def self.perform(user_id, xml, salmon_author_id)
|
||||||
user = User.find(user_id)
|
user = User.find(user_id)
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
module Jobs
|
module Jobs
|
||||||
class ReceiveLocal
|
class ReceiveLocal
|
||||||
|
extend ResqueJobLogging
|
||||||
@queue = :receive_local
|
@queue = :receive_local
|
||||||
def self.perform(user_id, person_id, object_type, object_id)
|
def self.perform(user_id, person_id, object_type, object_id)
|
||||||
user = User.find(user_id)
|
user = User.find(user_id)
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
module Jobs
|
module Jobs
|
||||||
class ReceiveSalmon
|
class ReceiveSalmon
|
||||||
|
extend ResqueJobLogging
|
||||||
@queue = :receive_salmon
|
@queue = :receive_salmon
|
||||||
def self.perform(user_id, xml)
|
def self.perform(user_id, xml)
|
||||||
user = User.find(user_id)
|
user = User.find(user_id)
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
module Jobs
|
module Jobs
|
||||||
class SocketWebfinger
|
class SocketWebfinger
|
||||||
|
extend ResqueJobLogging
|
||||||
@queue = :socket_webfinger
|
@queue = :socket_webfinger
|
||||||
def self.perform(user_id, account, opts={})
|
def self.perform(user_id, account, opts={})
|
||||||
finger = Webfinger.new(account)
|
finger = Webfinger.new(account)
|
||||||
|
|
|
||||||
24
lib/resque_job_logging.rb
Normal file
24
lib/resque_job_logging.rb
Normal file
|
|
@ -0,0 +1,24 @@
|
||||||
|
module ResqueJobLogging
|
||||||
|
def around_perform_log_job(*args)
|
||||||
|
log_string = "event=resque_job job=#{self} "
|
||||||
|
error = nil
|
||||||
|
time = Benchmark.realtime{
|
||||||
|
begin
|
||||||
|
yield
|
||||||
|
rescue Exception => e
|
||||||
|
error = e
|
||||||
|
end
|
||||||
|
}*1000
|
||||||
|
if error
|
||||||
|
log_string += "status=error error=\"#{error}\" "
|
||||||
|
else
|
||||||
|
log_string += "status=complete "
|
||||||
|
end
|
||||||
|
log_string += "ms=#{time} "
|
||||||
|
arg_count = 1
|
||||||
|
args.each{|arg| log_string += "arg#{arg_count}=\"#{arg[0..30]}\" "}
|
||||||
|
|
||||||
|
Rails.logger.info(log_string)
|
||||||
|
raise error if error
|
||||||
|
end
|
||||||
|
end
|
||||||
Loading…
Reference in a new issue