require 'active_support/log_subscriber' module ActionMessenger class LogSubscriber < ActiveSupport::LogSubscriber def deliver_now!(event) info do "#{Time.current} Sent Message (#{event.duration.round(1)}ms) #{event.payload.as_json}" end end def message_to_slack(event) info do "#{Time.current} Sent Message to Slack (#{event.duration.round(1)}ms) #{event.payload.as_json}" end end def upload_file_to_slack(event) info do "#{Time.current} Upload File to Slack (#{event.duration.round(1)}ms) #{event.payload.as_json}" end end def logger ActionMessenger::Base.logger end end end ActionMessenger::LogSubscriber.attach_to :action_messenger