Class: GraphQL::Tracing::PerfettoTrace::ArgumentsFilter

Inherits:
Object
  • Object
show all
Defined in:
lib/graphql/tracing/perfetto_trace.rb

Constant Summary collapse

SENSITIVE_KEY =

From Rails defaults https://github.com/rails/rails/blob/main/railties/lib/rails/generators/rails/app/templates/config/initializers/filter_parameter_logging.rb.tt#L6-L8

/passw|token|crypt|email|_key|salt|certificate|secret|ssn|cvv|cvc|otp/i
FILTERED =
"[FILTERED]"

Instance Method Summary collapse

Instance Method Details

#filter_param(key, value) ⇒ Object



614
615
616
617
618
619
620
621
# File 'lib/graphql/tracing/perfetto_trace.rb', line 614

def filter_param(key, value)
  if (key.is_a?(String) && SENSITIVE_KEY.match?(key)) ||
          (key.is_a?(Symbol) && SENSITIVE_KEY.match?(key.name))
    FILTERED
  else
    value
  end
end