def __init__(self, logfile): super(Solver, self).__init__() self.pid = os.getpid() self.logger.info("(PID %s) - starting Solver", str(self.pid)) #Waste Space parameters self.delta = 1 # 1 MB # self.size = self.delta self.name = '/tmp/tmp%s' % randomword(8) self.logger.info(os.getcwd()) #App Specific parameters self.solverID = 1 print("solverID %s" % self.solverID) self.solution = None self.objective = 0 self.connected = 0 self.new_offers = False self.solver = MatchingSolver(MICROGRID) self.buying_offers = [] self.selling_offers = [] self.finalized = -1 self.waiting_solutionID = False self.PREDICTION_WINDOW = 5 self.recordTime = False self.interval_trades = {} self.solutions = {} self.ISID = 0 self.DeadLine = 0.5 #seconds ideally this would be gotten from the framework API self.Pgain = 25 #50 self.PWMax = 50 self.priorPW = self.PREDICTION_WINDOW self.logpath = '/tmp/' + logfile + '.log' self.killLog = 'killLog.log' try: os.remove(self.logpath) except OSError: pass self.fh = logging.FileHandler(self.logpath) self.fh.setLevel(logging.INFO) self.fh.setFormatter(self.logformatter) self.logger.addHandler(self.fh) self.logger.info("(PID %s) - starting Solver", str(self.pid)) self.s = open('/dev/zero').read(1024 * 100 - 1) self.dbase = Database() self.dbase.post(now=datetime.datetime.now(), tag_dict={"object": "Solver_" + str(self.solverID)}, seriesName="PWMax", value=self.PWMax) self.uid = os.geteuid() # self.logger.info("UID: %s" %self.uid) self.username = pwd.getpwuid(self.uid)[0] # self.logger.info("USERNAME: %s" %self.username) self.thisProcess = psutil.Process(self.pid) self.cpuUtil = self.thisProcess.cpu_percent()
def __init__(self, logfile): super(TSMrecv, self).__init__() self.pid = os.getpid() self.logger.info("(PID %s) - starting TSM receiver",str(self.pid)) self.dbase = Database() logpath = '/tmp/' + logfile + '.log' try: os.remove(logpath) except OSError: pass self.fh = logging.FileHandler(logpath) self.fh.setLevel(logging.WARNING) self.fh.setFormatter(self.logformatter) self.logger.addHandler(self.fh) self.logger.warning("(PID %s) - starting TSM receiver",str(self.pid))
def __init__(self,ID,logfile): super(Trader, self).__init__() self.pid = os.getpid() self.logger.info("(PID %s) - starting Trader",str(self.pid)) self.prosumer_id = ID self.net_production = self.read_data(self.prosumer_id) self.selling_offers = set() self.buying_offers = set() self.connected =0 self.dbase = Database() self.role = None self.roleID = 0 #self.grid = zmq.Context().socket(zmq.PUB) #self.grid.bind('tcp://127.0.0.1:2000') self.interval_asks = {} self.interval_bids = {} self.interval_trades ={} self.finalized = -1 #RESOURCE MANAGEMENT PARAMETERS #NETWORK self.blk = 512 self.min = 1*self.blk self.max = 4*self.blk self.msg_size = self.min logpath = '/tmp/' + logfile + '.log' self.killLog = 'killLog.log' try: os.remove(logpath) except OSError: pass self.fh = logging.FileHandler(logpath) self.fh.setLevel(logging.WARNING) self.fh.setFormatter(self.logformatter) self.logger.addHandler(self.fh) self.logger.warning("(PID %s) - starting Trader",str(self.pid))
def __init__(self, logfile): super(DSO, self).__init__() self.pid = os.getpid() self.logger.info("(PID %s) - starting DSO",str(self.pid)) self.client = EthereumClient(ip=MINER, port=PORT) self.account = self.client.accounts()[0] # use the first owned address self.deploy_contract() self.next_interval = START_INTERVAL t = time() self.epoch = t - START_INTERVAL * INTERVAL_LENGTH self.dbase = Database() logpath = '/tmp/' + logfile + '.log' try: os.remove(logpath) except OSError: pass self.fh = logging.FileHandler(logpath) self.fh.setLevel(logging.WARNING) self.fh.setFormatter(self.logformatter) self.logger.addHandler(self.fh) self.logger.warning("(PID %s) - starting DSO",str(self.pid))
def __init__(self, logfile): super(Recorder, self).__init__() self.pid = os.getpid() self.logger.info("(PID %s) - starting Recorder", str(self.pid)) self.connected = 0 self.interval_trades = {} self.finalized = -1 self.solutions = collections.defaultdict(dict) self.solution2solver = {} self.dbase = Database() logpath = '/tmp/' + logfile + '.log' try: os.remove(logpath) except OSError: pass self.fh = logging.FileHandler(logpath) self.fh.setLevel(logging.WARNING) self.fh.setFormatter(self.logformatter) self.logger.addHandler(self.fh) self.logger.warning("(PID %s) - starting Recorder", str(self.pid))