self.crs.execute("SELECT `id`, `hostname`, `service`, `identity`, `read`, `write`, `debug`, `test` FROM `clients2` WHERE `valid` = 1 AND `hostname` IN (%s)"%format_strings,tuple(name))
row=self.crs.fetchall()
returnrowifrowelseNone
defget_debug(self):
self.crs.execute("SELECT VERSION() AS VER");
self.crs.execute("SELECT VERSION() AS VER")
row=self.crs.fetchone()
return{
"db":"MySQL",
...
...
@@ -296,16 +315,176 @@ class MySQL(Object):
cat=None,nocat=None,
tag=None,notag=None,
group=None,nogroup=None):
sqlwhere=[]
sqltemp={}
ifcatisnotNoneandnocatisnotNone:
raiseError("Unrealizable conditions. Choose cat or nocat option.",500,method='getEvents',
sqltemp['group']+=("cl.identity LIKE '%s' AND "%(identity))
ifnogroupisnotNone:
foridentityinjson.loads(nogroup):
sqltemp['group']+=("cl.identity NOT LIKE '%s' AND "%(identity))
# logging.debug(sqltemp['group'][:-4])
sqlwhere.append(sqltemp['group'][:-4])
sqlwhere_string=(" AND ".join(sqlwhere))
# logging.debug(sqlwhere_string)
# logging.debug(' AND ' . join(sqlwhere))
#sqlwhere = sqlwhere[:-4]
and_op=""ifnotsqlwhere_stringelse"AND"
# logging.debug("SELECT e.id, e.data FROM clients2 cl RIGHT JOIN events4 e ON cl.id = e.client_id WHERE e.id > %s AND %s %s e.valid = 1 LIMIT %s" % (str(id), sqlwhere_string, and_op, str(count)))
self.crs.execute("SELECT e.id, e.data FROM clients2 cl RIGHT JOIN events4 e ON cl.id = e.client_id WHERE e.id > %s AND %s %s e.valid = 1 LIMIT %s"%(str(id),sqlwhere_string,and_op,str(count)))