LogBench provides enhanced logging for background jobs with colored prefixes (e.g., [JobClass#job-id]) in the TUI.
ActiveJob
To ensure logs receive the proper job context and prefix, use the job's logger method instead of Rails.logger.
class EmailDeliveryJob < ApplicationJob
def perform(user_id)
# ✅ Correct: uses job's logger
logger.info "Starting email delivery for user #{user_id}"
# ❌ Incorrect: won't have job prefix
Rails.logger.info "This won't have job prefix"
end
end
Sidekiq
For plain Sidekiq jobs, LogBench automatically captures context via middleware, so you can continue using Rails.logger.
class EmailDeliveryJob < ApplicationJob
def perform(user_id)
logger.info "Starting email delivery for user #{user_id}" # ✅ Will have job prefix
user = User.find(user_id)
logger.info "Found user: #{user.email}" # ✅ Will have job prefix
# SQL queries are automatically tagged
user.update!(last_email_sent_at: Time.current) # ✅ Will have job prefix
logger.info "Email delivery completed" # ✅ Will have job prefix
end
end