Skip to content
Snippets Groups Projects

Error logging

Merged Piotr Gawron requested to merge error-logging into master
1 file
+ 7
3
Compare changes
  • Side-by-side
  • Inline
@@ -3,7 +3,7 @@ import logging
import sys
import traceback
from web.models import StudySubject, Subject
from web.models import StudySubject, Subject, Language
from .etl_common import EtlCommon
from .subject_import_reader import SubjectImportReader
from .warning_counter import MsgCounterHandler
@@ -40,11 +40,11 @@ class Importer(EtlCommon):
continue
else:
self.import_study_subject(study_subject)
except BaseException:
except BaseException as e:
self.problematic_count += 1
traceback.print_exc(file=sys.stdout)
logger.error("Problem with importing study subject: " + str(study_subject.screening_number) + "," +
str(study_subject.nd_number))
str(study_subject.nd_number), exc_info=e)
if "WARNING" in warning_counter.level2count:
self.warning_count = warning_counter.level2count["WARNING"]
logging.getLogger('').removeHandler(warning_counter)
@@ -55,7 +55,9 @@ class Importer(EtlCommon):
for field in Subject._meta.get_fields():
if field.get_internal_type() == "CharField" or \
field.get_internal_type() == "DateField" or \
field.get_internal_type() is "BooleanField":
field.get_internal_type() == "BooleanField" or \
field.get_internal_type() == "TextField" or \
(field.get_internal_type() == "ForeignKey" and field.related_model in (Language,)):
old_value = getattr(db_study_subject.subject, field.name)
new_value = self.get_new_value(old_value, getattr(study_subject.subject, field.name))
self.create_provenance_and_change_data(db_study_subject.subject, field.name, new_value, Subject)
@@ -64,7 +66,9 @@ class Importer(EtlCommon):
for field in StudySubject._meta.get_fields():
if field.get_internal_type() == "CharField" or \
field.get_internal_type() == "DateField" or \
field.get_internal_type() is "BooleanField":
field.get_internal_type() == "BooleanField" or \
field.get_internal_type() == "TextField" or \
(field.get_internal_type() == "ForeignKey" and field.related_model in (Language,)):
old_value = getattr(db_study_subject, field.name)
new_value = self.get_new_value(old_value, getattr(study_subject, field.name))
self.create_provenance_and_change_data(db_study_subject, field.name, new_value, StudySubject)
Loading