mirror of
https://github.com/samsonjs/grape_logging.git
synced 2026-03-29 09:35:46 +00:00
Add an option to use the Rails instrumentation
This commit is contained in:
parent
c716f78f2a
commit
7412cd5cf3
1 changed files with 12 additions and 6 deletions
|
|
@ -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
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue