def handle_exception(cls, meta, source_id, exception): db.session.rollback() db.session.close() (error_type, error_message, error_details) = sys.exc_info() if error_type is not None: error_message = unicode(error_message) error_details = traceback.format_exc() else: error_message = unicode(exception) error_type = exception.__class__.__name__ log.warning(error_message) CrawlerState.store_fail(meta, source_id, error_type=error_type, error_message=error_message, error_details=error_details) db.session.commit()
def handle_exception(cls, meta, collection_id, exception): db.session.rollback() db.session.close() if isinstance(exception, SQLAlchemyError): log.exception(exception) return (error_type, error_message, error_details) = sys.exc_info() if error_type is not None: error_message = unicode(error_message) error_details = traceback.format_exc() else: error_message = unicode(exception) error_type = exception.__class__.__name__ log.warning(error_message) CrawlerState.store_fail(meta, collection_id, error_type=error_type, error_message=error_message, error_details=error_details) db.session.commit()