Class: Aws::Xray::Request
- Inherits:
-
Struct
- Object
- Struct
- Aws::Xray::Request
- Defined in:
- lib/aws/xray/request.rb
Class Method Summary collapse
- .build(method:, url:, user_agent: nil, client_ip: nil, x_forwarded_for: nil, traced: nil) ⇒ Object
- .build_from_faraday_env(env, traced: false) ⇒ Object
- .build_from_rack_env(env) ⇒ Object
Instance Method Summary collapse
Class Method Details
.build(method:, url:, user_agent: nil, client_ip: nil, x_forwarded_for: nil, traced: nil) ⇒ Object
9 10 11 |
# File 'lib/aws/xray/request.rb', line 9 def build(method:, url:, user_agent: nil, client_ip: nil, x_forwarded_for: nil, traced: nil) new(encode(method), drop_params(encode(url)), encode(user_agent), encode(client_ip), x_forwarded_for, traced) end |
.build_from_faraday_env(env, traced: false) ⇒ Object
25 26 27 28 29 30 31 32 33 34 |
# File 'lib/aws/xray/request.rb', line 25 def build_from_faraday_env(env, traced: false) build( method: env.method.to_s.upcase, url: env.url.to_s, user_agent: env.request_headers['User-Agent'], client_ip: nil, x_forwarded_for: nil, traced: traced, ) end |
.build_from_rack_env(env) ⇒ Object
13 14 15 16 17 18 19 20 21 22 23 |
# File 'lib/aws/xray/request.rb', line 13 def build_from_rack_env(env) req = ::Rack::Request.new(env) build( method: req.request_method, url: req.url, user_agent: req.user_agent, client_ip: req.ip, x_forwarded_for: !!env['HTTP_X_FORWARDED_FOR'], traced: nil, ) end |
Instance Method Details
#to_h ⇒ Object
59 60 61 |
# File 'lib/aws/xray/request.rb', line 59 def to_h super.delete_if {|_, v| v.nil? } end |