Module: AttrEncryptedPgcrypto::LogSubscriber::PostgresPgp

Extended by:
ActiveSupport::Concern
Defined in:
lib/attr_encrypted_pgcrypto/log_subscriber/postgres_pgp.rb

Instance Method Summary collapse

Instance Method Details

#sql_with_postgres_pgp(event) ⇒ Object

Public: Prevents sensitive data from being logged



16
17
18
19
20
21
22
23
24
# File 'lib/attr_encrypted_pgcrypto/log_subscriber/postgres_pgp.rb', line 16

def sql_with_postgres_pgp(event)
  filter = /(pgp_sym_(encrypt|decrypt))\(((.|\n)*?)\)/i

  event.payload[:sql] = event.payload[:sql].gsub(filter) do |_|
    "#{$1}([FILTERED])"
  end

  sql_without_postgres_pgp(event)
end