Exemple #1
0
 def process (self):
     try:
         
         reticLog.logInfo(self.logList, "( " + self.name + " ) Message processed on sink : " + self.name)
         return 0
     except:
         errorMessage = traceback.format_exception_only(sys.exc_info()[0],sys.exc_info()[1])[0]
         reticLog.logError(self.logList, "( " + self.name + " ) Error during message processing in sink : " + self.name)
         reticLog.logError(self.logList, "( " + self.name + " ) " + errorMessage)
         return 1                    
Exemple #2
0
 def getMsg (self, message):
     try:
         reticLog.logInfo(self.logList, "( " + self.name + " ) Retrieving message for sink : " + self.name)
         # Re-initialize msg to get new message
         self.msg = ''
         self.msg = message
         reticLog.logInfo(self.logList, "( " + self.name + " ) Message retrieved in sink : " + self.name)          
         return 0
     except:
         errorMessage = traceback.format_exception_only(sys.exc_info()[0],sys.exc_info()[1])[0]
         reticLog.logError(self.logList, "( " + self.name + " ) Error during message retrieval in sink : " + self.name)
         reticLog.logError(self.logList, "( " + self.name + " ) " + errorMessage)
         return 1                    
Exemple #3
0
 def __init__ (self, args, logger):
     try:
         self.args = args
         self.msg = ''
         self.logList = logger
         self.name = args['name']
         self.dbFactoryArg = args['dbFactroyArg']
         self.inputFormat = args['inputFormat']
         self.delimiter = args['delimiter']
         self.hasHeader = args['hasHeader']            
         #self.replaceEmptyFieldBy = args['replaceEmptyFieldBy']
         if not self.args.has_key('autoCommit'):
             self.autocommit = False
         #session pool
         self.session = None
         self.nbThreads = int(args['nbThreads'])
         if self.nbThreads == 0:
             self.nbThreads = 1
         if args.has_key('retries'):
             self.retries = int(args['retries'])
         else:
             self.retries = 5
         #self.curArgs = {}
         #self.curArgs['cursorName'] = 'cursor1'
         self.metadata = {}
         self.fieldNames = []
         self.fieldLength = []
         if self.inputFormat == 'delimited':
             if self.args.has_key('fieldNames'):
                 self.fieldNames = args['fieldNames']
         elif self.inputFormat == 'fixedLength':
             if self.args.has_key('fieldNames') and self.args.has_key('fieldLength'):
                 self.fieldNames = args['fieldNames']
                 self.fieldLength = args['fieldLength']
         #here, for multithread updating database, speed up here
         self.connection = dbFactory.dbFactory(args['dbFactroyArg'], self.logList)
         #for i in range(self.nbThreads):
         self.session = self.makeSession(self.connection)
         self.parallelize = 'n'
         self.nbQueriesParal = 10
         ########################################################
         #this is for future optimization, may not be needed
         if args.has_key('parallelize'):
             self.parallelize = args['parallelize']
         if args.has_key('nbQueriesParal'):
             self.nbQueriesParal = int(args['nbQueriesParal'])
     except KeyError:
         reticLog.logError(self.logList, "( " + self.name + " ) Error during SQLSink initialization")
         reticLog.logError(self.logList, "( " + self.name + " ) Parameter " + str(sys.exc_info()[1]) + " is missing in sink definition" )
         sys.exit(1)
     except:
         errorMessage = traceback.format_exception_only(sys.exc_info()[0],sys.exc_info()[1])[0]
         reticLog.logError(self.logList, "( " + self.name + " ) Unknown error during initialization in sink")
         reticLog.logError(self.logList, "( " + self.name + " ) " + errorMessage)
         sys.exit(1)