import sys from ..preprocessor import Preprocessor from ..utils import utils from . import config class ReadFile(Preprocessor): config: config.ReadFileConfig def __init__(self, configs, data): super(ReadFile, self).__init__(configs, data) def execute(self): result = [] try: result = utils.read_csv(self.config.data[0]) except: raise Exception("read metrics file failed", sys.exc_info()[1]) else: return result class CleanData(Preprocessor): config: config.CleanDataConfig def __init__(self, configs, data): super(CleanData, self).__init__(configs, data) def execute(self): result = [] try: result = utils.clean_metrics(self.config.data[0], self.config.start_ts, self.config.end_ts, self.config.step) except: raise Exception("clean metrics failed", sys.exc_info()[1]) else: return result class ConvertMetricsToTuple(Preprocessor): config: config.ConvertMetricsToTupleConfig def __init__(self, configs, data): super(ConvertMetricsToTuple, self).__init__(configs, data) def execute(self): result = [] try: result = utils.convert_list_to_tuple(self.config.data[0]) except: raise Exception("convert metrics failed", sys.exc_info()[1]) else: return result class CreateMetricsSqlite(Preprocessor): config: config.CreateMetricsSqliteConfig def __init__(self, configs, data): super(CreateMetricsSqlite, self).__init__(configs, data) def execute(self): try: utils.create_metrics_sqlite( self.config.data[0], self.config.db_name, self.config.table_name) except: raise Exception("create metrics sqlite failed", sys.exc_info()[1])