# frozen_string_literal: true module PlainApm module Hooks class ActionPack < ActiveSupportSubscriber NOTIFICATION_PATTERN = /\A[^!]\w+\.action_controller\Z/.freeze private def notification_pattern NOTIFICATION_PATTERN end def payload(event) name, base = attributes_from_notification(event) payload = event.payload case name when "process_action" base.merge({ "controller" => payload[:controller], "action" => payload[:action], "params" => payload[:params], "format" => payload[:format], "method" => payload[:method], "path" => payload[:path], "status" => payload[:status] }) when "redirect_to", "start_processing", "halted_callback", "send_file", "send_data" nil when "read_fragment", "write_fragment", "exist_fragment?", "expire_fragment" # controller, action, key nil end end end end end