Sha256: a2767ed5a5f490896f2d2e20124e11885aa0c1b2d6458f7cae219cbb1594b23c
Contents?: true
Size: 1.03 KB
Versions: 10
Compression:
Stored size: 1.03 KB
Contents
# frozen_string_literal: true module Mnemosyne module Probes module ActionController module Renderers CATEGORY = 'render_to_body.renderers.action_controller' class Probe < ::Mnemosyne::Probe subscribe CATEGORY def setup ::ActionController::Base.prepend Instrumentation end def call(trace, _name, start, finish, _id, _payload) start = ::Mnemosyne::Clock.to_tick(start) finish = ::Mnemosyne::Clock.to_tick(finish) span = ::Mnemosyne::Span.new 'app.controller.renderers.rails', start: start, finish: finish trace << span end end module Instrumentation def render_to_body(*args, &block) ::ActiveSupport::Notifications.instrument CATEGORY do super end end end end end register 'ActionController::Base', 'action_controller/metal/renderers', ActionController::Renderers::Probe.new end end
Version data entries
10 entries across 10 versions & 1 rubygems