Class: Honeybadger::Rack::MetricsReporter
- Inherits:
-
Object
- Object
- Honeybadger::Rack::MetricsReporter
- Defined in:
- lib/honeybadger/rack/metrics_reporter.rb
Constant Summary collapse
- GC_TIME_METRIC =
'app.gc.time'.freeze
- GC_COLLECTIONS_METRIC =
'app.gc.collections'.freeze
Instance Method Summary collapse
- #call(env) ⇒ Object
-
#initialize(app, config) ⇒ MetricsReporter
constructor
A new instance of MetricsReporter.
Constructor Details
#initialize(app, config) ⇒ MetricsReporter
Returns a new instance of MetricsReporter.
9 10 11 12 |
# File 'lib/honeybadger/rack/metrics_reporter.rb', line 9 def initialize(app, config) @app = app @config = config end |
Instance Method Details
#call(env) ⇒ Object
14 15 16 17 18 19 20 21 |
# File 'lib/honeybadger/rack/metrics_reporter.rb', line 14 def call(env) start = Time.now track_gc? and GC::Profiler.clear status, headers, body = app.call(env) duration = (Time.now - start) * 1000 report_metrics(status, duration) [status, headers, body] end |