def removeFile(filePath, utcDate=databaseInterface.getUTCDate()): global separator print "removing: ", filePath filesWithMatchingPath = [] sqlLoggingLock.acquire() #Find the file pk/UUID c = MCPloggingSQL.database.cursor() sql = """SELECT fileUUID FROM Files WHERE removedTime = 0 AND Files.currentLocation = '""" + MySQLdb.escape_string( filePath) + """';""" c.execute(sql) row = c.fetchone() while row != None: filesWithMatchingPath.append(row[0]) row = c.fetchone() sqlLoggingLock.release() #Update the database for file in filesWithMatchingPath: eventIdentifierUUID = uuid.uuid4().__str__() eventType = "file removed" eventDateTime = utcDate eventDetail = "" eventOutcomeDetailNote = "removed from: " + filePath databaseInterface.insertIntoEvents(fileUUID=fileUUID, \ eventIdentifierUUID=eventIdentifierUUID, \ eventType=eventType, \ eventDateTime=eventDateTime, \ eventDetail=eventDetail, \ eventOutcome=eventOutcome, \ eventOutcomeDetailNote=eventOutcomeDetailNote) removeFileByFileUUID(fileUUID, utcDate)
def removeFile(filePath, utcDate = databaseInterface.getUTCDate()): global separator print "removing: ", filePath filesWithMatchingPath = [] sqlLoggingLock.acquire() #Find the file pk/UUID c=MCPloggingSQL.database.cursor() sql = """SELECT fileUUID FROM Files WHERE removedTime = 0 AND Files.currentLocation = '""" + MySQLdb.escape_string(filePath) + """';""" c.execute(sql) row = c.fetchone() while row != None: filesWithMatchingPath.append(row[0]) row = c.fetchone() sqlLoggingLock.release() #Update the database for file in filesWithMatchingPath: eventIdentifierUUID = uuid.uuid4().__str__() eventType = "file removed" eventDateTime = utcDate eventDetail = "" eventOutcomeDetailNote = "removed from: " + filePath databaseInterface.insertIntoEvents(fileUUID=fileUUID, \ eventIdentifierUUID=eventIdentifierUUID, \ eventType=eventType, \ eventDateTime=eventDateTime, \ eventDetail=eventDetail, \ eventOutcome=eventOutcome, \ eventOutcomeDetailNote=eventOutcomeDetailNote) removeFileByFileUUID(fileUUID, utcDate)
def checksumFile(filePath, fileUUID): global transferDirectory truePath = filePath.replace("transfer/", transferDirectory, 1) checksum = sha_for_file(truePath) utcDate = databaseInterface.getUTCDate() #Create Event eventIdentifierUUID = uuid.uuid4().__str__() eventType = "message digest calculation" eventDateTime = utcDate eventDetail = 'program="python"; module="hashlib.sha256()" ; file="/usr/lib/python2.6/hashlib.pyc"' eventOutcome = "" eventOutcomeDetailNote = checksum.__str__() databaseInterface.insertIntoEvents(fileUUID=fileUUID, \ eventIdentifierUUID=eventIdentifierUUID, \ eventType=eventType, \ eventDateTime=eventDateTime, \ eventDetail=eventDetail, \ eventOutcome=eventOutcome, \ eventOutcomeDetailNote=eventOutcomeDetailNote)