def check_notification_state(i): while 1: session = Session() ins_opition = queue_notification.get(True) print "Greenlets %s got : %s" % (i,time.asctime()), " " , ins_opition sql = """ SELECT result FROM cloud_result WHERE TIME = ( SELECT MAX( TIME ) FROM cloud_result ) AND uuid IN ( '%s' ) """ % ins_opition['uuid'] result = raw_sql(sql) # if result is empty, skip current loop. if not result: continue # analyst notification in another function ret = analyst_notification_result(result,ins_opition) print "Greenlets notification %s got : %s" % (i,time.asctime()) , ret if not ret: continue q = session.query(Instances).filter(Instances.uuid==ins_opition['uuid']) if q.all(): q.update( {Instances.notification_state:simplejson.dumps(ret)} ) session.commit()
def run(self): while 1: ins_opition = queue_notification.get(True) sql = """ SELECT result FROM cloud_result WHERE TIME = ( SELECT MAX( TIME ) FROM cloud_result ) AND uuid IN ( '%s' ) """ % ins_opition['uuid'] result = raw_sql(sql) # if result is empty, skip current loop. if not result: continue # analyst notification in another function ret = analyst_notification_result(result,ins_opition) if not ret: continue q = self.session.query(Instances).filter(Instances.uuid==ins_opition['uuid']) if q.all(): q.update( {Instances.notification_state:simplejson.dumps(ret)} ) self.session.commit()