def writeEvent(expfile, ret): localHA = None try: name = expfile.split("/")[2].rstrip(".exp") localHA = NASHAComm("127.0.0.1") setHistoryResult({'status' : ret['status'], 'expfile' : expfile}) cfg = localHA.getConfig("RRConfig", "rr_get_task", {'name' : name})['data'] if ret['status'] == 0: eventAgent.writeEvent(localHA, {'op' : 'runRR', 'name' : name, 'ip' : cfg['ip'], 'ret' : ret}) else: if ret['status'] == QUOTA_EXCEED: eventAgent.writeEvent(localHA, {'op' : 'RRquota', 'name' : name, 'ret' : ret}) elif ret['status'] == IN_PROGRESS: eventAgent.writeEvent(localHA, {'op' : 'RRinprogress', 'name' : name, 'ret' : ret}) elif ret['status'] == PERM_DENY: eventAgent.writeEvent(localHA, {'op' : 'RRperm', 'name' : name, 'ret' : ret}) elif ret['status'] == LOCALBLOCKBYSHELL: eventAgent.writeEvent(localHA, {'op' : 'runRR', 'name' : name, 'ip' : cfg['ip'], 'ret' : ret}) elif ret['status'] == IP_ERROR: eventAgent.writeEvent(localHA, {'op' : 'RRip', 'name' : name, 'ip' : cfg['ip'], 'ret' : ret}) elif ret['status'] == PATHERROR: eventAgent.writeEvent(localHA, {'op' : 'RRpath', 'name' : name, 'ret' : ret, 'cfg' : cfg}) else: eventAgent.writeEvent(localHA, {'op' : 'runRR', 'name' : name, 'ip' : cfg['ip'], 'ret' : ret}) except: print traceback.format_exc() pass finally: localHA.closeSocket()
def close(self): self._timer.close() self._worker.close() self._info_updater.close() Actor.close(self) def join(self): self._timer.join() self._worker.join() self._info_updater.join() Actor.join(self) def test(self): for sch_config in self._schedule_list: self._worker.send(('run', sch_config)) def echo(msg): print '[echo] msg: %s' % (msg) if __name__ == '__main__': localHA = NASHAComm(LOCAL_HA_IP) schInfo = localHA.getConfig("ScheduleConfig", "schedule_statusAll") cdaemon = CronDaemon(localHA) cdaemon.start() cdaemon.join() localHA.closeSocket()