diff --git a/app/api/repp/api.rb b/app/api/repp/api.rb index 7a9ecd1e8..f52770920 100644 --- a/app/api/repp/api.rb +++ b/app/api/repp/api.rb @@ -49,7 +49,8 @@ module Repp response_code: status, api_user_name: current_user.try(:username), api_user_registrar: current_user.try(:registrar).try(:to_s), - ip: request.ip + ip: request.ip, + uuid: request.uuid }) end diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index ac26e61a3..fac9d29f4 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -55,6 +55,10 @@ class ApplicationController < ActionController::Base end end + def info_for_paper_trail + { uuid: request.uuid } + end + def user_for_paper_trail user_log_str(current_user) end diff --git a/app/controllers/epp_controller.rb b/app/controllers/epp_controller.rb index 49be47848..de1002604 100644 --- a/app/controllers/epp_controller.rb +++ b/app/controllers/epp_controller.rb @@ -361,7 +361,7 @@ class EppController < ApplicationController if request_command == 'login' && frame.present? frame.gsub!(/pw>.+<\//, 'pw>[FILTERED]]+)>([^<])+<\/eis:legalDocument>/, "[FILTERED]") + trimmed_request = frame.gsub(/]+)>([^<])+<\/eis:legalDocument>/, "[FILTERED]") if frame.present? ApiLog::EppLog.create({ request: trimmed_request, @@ -371,7 +371,8 @@ class EppController < ApplicationController response: @response, api_user_name: @api_user.try(:username) || current_user.try(:username) || 'api-public', api_user_registrar: @api_user.try(:registrar).try(:to_s) || current_user.try(:registrar).try(:to_s), - ip: request.ip + ip: request.ip, + uuid: request.uuid }) end # rubocop: enable Metrics/CyclomaticComplexity diff --git a/db/migrate/20160411140719_add_matching_column.rb b/db/migrate/20160411140719_add_matching_column.rb new file mode 100644 index 000000000..bbc15d352 --- /dev/null +++ b/db/migrate/20160411140719_add_matching_column.rb @@ -0,0 +1,15 @@ +class AddMatchingColumn < ActiveRecord::Migration + + def change + tables = [:log_account_activities, :log_accounts, :log_addresses, :log_api_users, :log_bank_statements, + :log_bank_transactions, :log_blocked_domains, :log_certificates, :log_contact_statuses, :log_contacts, + :log_countries, :log_dnskeys, :log_domain_contacts, :log_domain_statuses, :log_domain_transfers, + :log_domains, :log_invoice_items, :log_invoices, :log_keyrelays, :log_messages, :log_nameservers, + :log_pricelists, :log_registrars, :log_reserved_domains, :log_settings, :log_users, :log_white_ips, + :log_zonefile_settings] + + tables.each do |table| + add_column table, :uuid, :string + end + end +end diff --git a/db/migrate/20160421074023_add_log_matching_column.rb b/db/migrate/20160421074023_add_log_matching_column.rb new file mode 100644 index 000000000..6ea1931a9 --- /dev/null +++ b/db/migrate/20160421074023_add_log_matching_column.rb @@ -0,0 +1,9 @@ +class AddLogMatchingColumn < ActiveRecord::Migration + + def change + + ApiLog::EppLog.connection.execute("ALTER TABLE epp_logs ADD COLUMN uuid varchar;") + ApiLog::ReppLog.connection.execute("ALTER TABLE repp_logs ADD COLUMN uuid varchar;") + + end +end