Browse Source

CLDC-3938 Log invalid BU row numbers (#3018)

* log row numbers of any logs still invalid after blanking non setup fields

* include first invalid row in sentry message

---------

Co-authored-by: Carolyn <carolyn.barker@softwire.com>
pull/3011/head^2
carolynbarker 3 weeks ago committed by GitHub
parent
commit
f9feaf4a57
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
  1. 8
      app/services/bulk_upload/lettings/validator.rb
  2. 9
      app/services/bulk_upload/sales/validator.rb

8
app/services/bulk_upload/lettings/validator.rb

@ -55,8 +55,10 @@ class BulkUpload::Lettings::Validator
row_parsers.each do |row_parser|
row_parser.log.blank_invalid_non_setup_fields!
end
if any_logs_invalid?
if invalid_row_numbers.any?
Sentry.capture_message("Bulk upload log creation blocked due to invalid logs after blanking non setup fields: #{bulk_upload.id}.")
Rails.logger.error("Lettings bulk upload #{bulk_upload.id} blocked due to invalid logs after blanking on rows #{invalid_row_numbers}")
"logs_invalid"
end
end
@ -101,8 +103,8 @@ private
end
end
def any_logs_invalid?
row_parsers.any? { |row_parser| row_parser.log.invalid? }
def invalid_row_numbers
row_parsers.each_with_index.map { |row_parser, index| index + row_offset + 1 if row_parser.log.invalid? }.compact
end
def csv_parser

9
app/services/bulk_upload/sales/validator.rb

@ -56,8 +56,9 @@ class BulkUpload::Sales::Validator
row_parser.log.blank_invalid_non_setup_fields!
end
if any_logs_invalid?
Sentry.capture_message("Bulk upload log creation blocked due to invalid logs after blanking non setup fields: #{bulk_upload.id}.")
if invalid_row_numbers.any?
Sentry.capture_message("Bulk upload #{bulk_upload.id} had log creation blocked due to invalid logs after blanking non setup fields. First invalid row number: #{invalid_row_numbers.first}.")
Rails.logger.error("Sales bulk upload #{bulk_upload.id} blocked due to invalid logs after blanking on rows #{invalid_row_numbers}")
"logs_invalid"
end
end
@ -98,8 +99,8 @@ private
end
end
def any_logs_invalid?
row_parsers.any? { |row_parser| row_parser.log.invalid? }
def invalid_row_numbers
row_parsers.each_with_index.map { |row_parser, index| index + row_offset + 1 if row_parser.log.invalid? }.compact
end
def csv_parser

Loading…
Cancel
Save