def __init__(self): """ Constructor. """ print __name__ self.logger = SEKLogger(__name__) self.connector = MSGDBConnector() self.dbUtil = MSGDBUtil() self.notifier = MSGNotifier() self.configer = MSGConfiger()
def __init__(self): """ Constructor. """ self.logger = SEKLogger(__name__, 'DEBUG') self.aggregator = MSGDataAggregator() self.notifier = MSGNotifier() self.rawTypes = [x.name for x in list(MSGAggregationTypes)] self.connector = MSGDBConnector() self.conn = self.connector.connectDB() self.cursor = self.conn.cursor() self.dbUtil = MSGDBUtil()
def __init__(self, exitOnError=True, commitOnEveryInsert=False, testing=False): """ Constructor. :param testing: if True, the testing DB will be connected instead of the production DB. """ self.logger = SEKLogger(__name__, 'info') self.configer = MSGConfiger() self.conn = MSGDBConnector().connectDB() self.cursor = self.conn.cursor() self.dbUtil = MSGDBUtil() self.notifier = MSGNotifier() self.mathUtil = MSGMathUtil() self.timeUtil = MSGTimeUtil() self.nextMinuteCrossing = {} self.nextMinuteCrossingWithoutSubkeys = None self.exitOnError = exitOnError self.commitOnEveryInsert = commitOnEveryInsert section = 'Aggregation' tableList = [ 'irradiance', 'agg_irradiance', 'weather', 'agg_weather', 'circuit', 'agg_circuit', 'egauge', 'agg_egauge' ] self.dataParams = { 'weather': ('agg_weather', 'timestamp', ''), 'egauge': ('agg_egauge', 'datetime', 'egauge_id'), 'circuit': ('agg_circuit', 'timestamp', 'circuit'), 'irradiance': ('agg_irradiance', 'timestamp', 'sensor_id') } self.columns = {} # tables[datatype] gives the table name for datatype. self.tables = { t: self.configer.configOptionValue(section, '{}_table'.format(t)) for t in tableList } for t in self.tables.keys(): self.logger.log('t:{}'.format(t), 'DEBUG') try: self.columns[t] = self.dbUtil.columnsString( self.cursor, self.tables[t]) except TypeError as error: self.logger.log( 'Ignoring missing table: Error is {}.'.format(error), 'error')
def __init__(self): """ Constructor. """ self.logger = SEKLogger(__name__, 'DEBUG') self.aggregator = MSGDataAggregator(exitOnError=False, commitOnEveryInsert=True) self.notifier = MSGNotifier() # Available types are in ['weather', 'egauge', 'circuit', 'irradiance']. self.rawTypes = [''] self.connector = MSGDBConnector() self.conn = self.connector.connectDB() self.cursor = self.conn.cursor() self.dbUtil = MSGDBUtil()
'specified in the local configuration file.') commandLineArgs = argParser.parse_args() if __name__ == '__main__': processCommandLineArguments() filename = COMMAND_LINE_ARGS.filename success = True anyFailure = False connector = MSGDBConnector(testing = COMMAND_LINE_ARGS.testing) conn = connector.connectDB() cur = conn.cursor() dbUtil = MSGDBUtil() notifier = MSGNotifier() msgBody = '' configer = MSGConfiger() if COMMAND_LINE_ARGS.testing: dbName = configer.configOptionValue("Database", "testing_db_name") else: dbName = configer.configOptionValue("Database", "db_name") msg = ("Loading Meter Location History data in file %s to database %s.\n" % ( filename, dbName)) sys.stderr.write(msg) msgBody += msg f = open(filename, "r") reader = csv.reader(f)
def setUp(self): self.logger = SEKLogger(__name__) self.notifier = MSGNotifier() self.configer = MSGConfiger()