aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib/action_view/railties/log_subscriber.rb
blob: 9487a1070637e003407b96063e8f9c218779f1e4 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
module ActionView
  module Railties
    class LogSubscriber < Rails::LogSubscriber
      def render_template(event)
        message = "Rendered #{from_rails_root(event.payload[:identifier])}"
        message << " within #{from_rails_root(event.payload[:layout])}" if event.payload[:layout]
        message << (" (%.1fms)" % event.duration)
        info(message)        
      end
      alias :render_partial :render_template
      alias :render_collection :render_template

      def logger
        ActionController::Base.logger
      end

    protected

      def from_rails_root(string)
        string.sub("#{Rails.root}/", "").sub(/^app\/views\//, "")
      end
    end
  end
end