In caso di file di audit di grandi dimensioni, il processing del log per l'analisi può portare il processo il OOM con conseguente kill del processo python.
Il problema è che vengono caricate tutte le righe in memoria prima di elaborarle.
Si propone una fix per processare le righe in streaming anziché accumularle tutte in memoria:
Rimuovendo:
lines = [] for line in finput(files, openhook=compr): lines.append(line.rstrip().split("|"))
e modificando il ciclo nel seguente modo:
for line in finput(files, openhook=compr): event = line.rstrip().split("|")
In caso di file di audit di grandi dimensioni, il processing del log per l'analisi può portare il processo il OOM con conseguente kill del processo python.
Il problema è che vengono caricate tutte le righe in memoria prima di elaborarle.
Si propone una fix per processare le righe in streaming anziché accumularle tutte in memoria:
Rimuovendo:
lines = [] for line in finput(files, openhook=compr): lines.append(line.rstrip().split("|"))e modificando il ciclo nel seguente modo:
for line in finput(files, openhook=compr): event = line.rstrip().split("|")