def fetchAndStoreData(self): settings = self.db.readSettings() now = calendar.timegm(time.gmtime()) since = "%sm"%int(math.ceil((now - settings["lastrun"])/60)) lifespan = TK.lifeSpanToMinutes(settings["datalife"]) since = since if int(since[:-1])<int(lifespan[:-1]) else lifespan data = self.MispEx.getMISPData(since) matches = self.MispEx.extractData(data, settings["datatype"], settings["analysis_level"], settings["threat_level"]) self.db.storeData(matches) s = self.db.readSettings() self.db.writeSettings(s["lastrun"], now, s["datatype"], s["datalife"], s["analysis_level"], s["threat_level"]) self.cleanOldRecords()
def cleanOldRecords(self): settings = self.db.readSettings() now = calendar.timegm(time.gmtime()) lifespan = TK.lifeSpanToMinutes(settings["datalife"]) oldest = now - (int(lifespan[:-1]) * 60) self.db.removeData("age < %s"%oldest)