Module: Julewire::Rails::RequestAttributes
- Defined in:
- lib/julewire/rails/request_attributes.rb
Class Method Summary collapse
- .context_fields(request) ⇒ Object
- .error_summary(request, error, status:, wrapper:) ⇒ Object
- .rendered_error_summary(request, rendered_error, status:) ⇒ Object
- .request(request) ⇒ Object
- .request_id(request) ⇒ Object
- .response_summary(request, status, headers) ⇒ Object
Class Method Details
.context_fields(request) ⇒ Object
7 8 9 10 11 12 13 14 15 16 |
# File 'lib/julewire/rails/request_attributes.rb', line 7 def context_fields(request) request = request_fields(request) values = Core::Integration::Values::Shape {}.tap do |fields| values.append_field(fields, :request_id, request.id) values.append_field(fields, :http_method, request.method) values.append_field(fields, :path, request.path) values.append_field(fields, :remote_ip, request.remote_ip) end end |
.error_summary(request, error, status:, wrapper:) ⇒ Object
41 42 43 44 45 46 |
# File 'lib/julewire/rails/request_attributes.rb', line 41 def error_summary(request, error, status:, wrapper:) { attributes: { rails: rails_error_attributes(request, error, status: status, wrapper: wrapper) }, neutral: neutral_fields(Core::Fields::AttributeKeys::HTTP_RESPONSE_STATUS_CODE => status) } end |
.rendered_error_summary(request, rendered_error, status:) ⇒ Object
29 30 31 32 33 34 35 36 37 38 39 |
# File 'lib/julewire/rails/request_attributes.rb', line 29 def rendered_error_summary(request, rendered_error, status:) error_summary( request, rendered_error.fetch(:error), status: status, wrapper: nil ).tap do |fields| fields[:attributes][:rails][:rescue_response] = rendered_error[:rescue_response] fields[:attributes][:rails][:rescue_template] = rendered_error[:rescue_template] end end |
.request(request) ⇒ Object
18 19 20 |
# File 'lib/julewire/rails/request_attributes.rb', line 18 def request(request) request_neutral_attributes(request) end |
.request_id(request) ⇒ Object
48 49 50 |
# File 'lib/julewire/rails/request_attributes.rb', line 48 def request_id(request) request_fields(request).id end |
.response_summary(request, status, headers) ⇒ Object
22 23 24 25 26 27 |
# File 'lib/julewire/rails/request_attributes.rb', line 22 def response_summary(request, status, headers) { attributes: { rails: rails_response_attributes(request, status, headers) }, neutral: neutral_fields(Core::Fields::AttributeKeys::HTTP_RESPONSE_STATUS_CODE => status) } end |