From 7412cd5cf306acca4071426aca3a30f7e0c0fa10 Mon Sep 17 00:00:00 2001 From: jules Date: Fri, 23 Oct 2015 15:47:52 +0200 Subject: [PATCH] Add an option to use the Rails instrumentation --- lib/grape_logging/middleware/request_logger.rb | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/lib/grape_logging/middleware/request_logger.rb b/lib/grape_logging/middleware/request_logger.rb index 07d6af3..63b6e60 100644 --- a/lib/grape_logging/middleware/request_logger.rb +++ b/lib/grape_logging/middleware/request_logger.rb @@ -5,16 +5,18 @@ module GrapeLogging class RequestLogger < Grape::Middleware::Base def initialize(app, options = {}) super - @logger = @options[:logger] || Logger.new(STDOUT) - @logger.formatter = @options[:formatter] || GrapeLogging::Formatters::Default.new + if options[:instrumentation_key] + @instrumentation_key = options[:instrumentation_key] + else + @logger = @options[:logger] || Logger.new(STDOUT) + @logger.formatter = @options[:formatter] || GrapeLogging::Formatters::Default.new + end @included_loggers = @options[:include] || [] end def before start_time - @included_loggers.each do |included_logger| - included_logger.before - end + @included_loggers.each { |included_logger| included_logger.before } end def after @@ -26,7 +28,11 @@ module GrapeLogging oldval.respond_to?(:merge) ? oldval.merge(newval) : newval end end - @logger.info parameters + if @instrumentation_key + ActiveSupport::Notifications.instrument @instrumentation_key, parameters + else + @logger.info parameters + end nil end