Class: BetterLogs::ActionDispatch::Payload

Inherits:
ActiveSupport::HashWithIndifferentAccess
  • Object
show all
Defined in:
lib/better_logs/action_dispatch/payload.rb

Instance Method Summary collapse

Constructor Details

#initialize(payload) ⇒ Payload

Returns a new instance of Payload.



2
3
4
5
6
7
8
9
10
11
12
13
14
15
# File 'lib/better_logs/action_dispatch/payload.rb', line 2

def initialize(payload)
  request = payload[:request]
  user_agent = UserAgent.parse(request.headers['HTTP_USER_AGENT'] || '')
  data = {
    remote_ip:  request.remote_ip,
    request_id: request.uuid,
    browser:    {
      name:     user_agent.browser,
      platform: user_agent.platform,
      version:  user_agent.version.to_s
    }
  }.flat_keys('_')
  super(data)
end