Sha256: 4116b1686b02ffa99a3b1ea0ef66d9b6f4095f7a7d9e2edc7fb729f2ff1ff0bb
Contents?: true
Size: 917 Bytes
Versions: 3
Compression:
Stored size: 917 Bytes
Contents
module Radriar module API module Logging class Instrumenter def initialize(app) @app = app end def call(env) payload = { remote_addr: env['REMOTE_ADDR'], request_method: env['REQUEST_METHOD'], request_path: env['PATH_INFO'], request_query: env['QUERY_STRING'], x_organization: env['HTTP_X_ORGANIZATION'] } ActiveSupport::Notifications.instrument('grape.request', payload) do @app.call(env).tap do |response| if payload[:params].present? payload[:params] = env['api.endpoint'].params.to_hash payload[:params].delete(:route_info) payload[:params].delete(:format) payload[:response_status] = response[0] end end end end end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
radriar-0.1.0.alpha.3 | lib/radriar/api/logging.rb |
radriar-0.1.0.alpha.2 | lib/radriar/api/logging.rb |
radriar-0.1.0.alpha.1 | lib/radriar/api/logging.rb |