Module: Julewire::Rack::Capture::JsonBody

Defined in:
lib/julewire/rack/capture/json_body.rb

Constant Summary collapse

BODY_KEYS =
{ request: :request_body, response: :response_body }.freeze
BODY_BYTES_KEYS =
{ request: :request_body_bytes, response: :response_body_bytes }.freeze
BODY_TRUNCATED_KEYS =
{ request: :request_body_truncated, response: :response_body_truncated }.freeze
JSON_KEYS =
{ request: :request_body_json, response: :response_body_json }.freeze
PARSE_ERROR_KEYS =
{ request: :request_body_parse_error, response: :response_body_parse_error }.freeze

Class Method Summary collapse

Class Method Details

.fields(prefix, body, bytes:, truncated:, mode:) ⇒ Object



16
17
18
19
20
21
22
23
24
25
# File 'lib/julewire/rack/capture/json_body.rb', line 16

def fields(prefix, body, bytes:, truncated:, mode:)
  fields = {
    BODY_BYTES_KEYS.fetch(prefix) => bytes,
    BODY_TRUNCATED_KEYS.fetch(prefix) => truncated
  }
  return fields_with_raw_body(fields, prefix, body) unless mode == Settings::JSON_BODY
  return fields if truncated

  append_parsed_fields(fields, prefix, body)
end