Organizacion preprocesamiento

parent f39139c3
......@@ -14,6 +14,9 @@ class Dato:
self.statusCode = None
self.volumenTransf = None
self.marcaTiempo = None
# Otros atributos que se agregaran posteriormente en gestor
self.idUsuario = None
self.idSesion = None
# Se obtienen todos los datos
......
......@@ -2,18 +2,21 @@ from IdentificacionUsuarios import IdentificacionUsuarios
from IdentificacionSesiones import IdentificacionSesiones
from ObtencionRegistro import ObtencionRegistro
# Se crean registros
registros = ObtencionRegistro("../access_log_Aug95_reducido", True, [], [])
idUsuarios = IdentificacionUsuarios(registros.registro)
idSesiones = IdentificacionSesiones(registros.registro, idUsuarios.identificaciones)
print("Registros:")
for i in registros.registro:
print(i)
# Se obtienen y agregan identificaciones de usuarios y sesiones
idUsuarios = IdentificacionUsuarios(registros.registro)
#idSesiones = IdentificacionSesiones(registros.registro, idUsuarios.identificaciones)
for i in range(len(registros.registro)):
registros.idUsuario = idUsuarios.identificaciones[i]
#registros.idSesiones = idSesiones.sesiones[i]
print("Usuarios:")
for i in idUsuarios:
print(i)
print("Sesiones:")
for i in idSesiones:
print(i)
\ No newline at end of file
# Se muestran resultados log
informe = ("Registro {}:\nHost Remoto: {}\nFecha: {}\nMetodo de Petición: {}\nURL: {}\nProtocolo: {}\nStatus Code: {}\n"
"Volumen de Transferencia: {}Marca de Tiempo: {}\nId Usuario: {}\nId Sesion: {}\n")
print("Resultados: ")
for i in range(len(registros.registro)):
r = registros.registro[i]
print(informe.format(i+1, r.hostRemoto, r.fecha, r.metodoPeticion, r.url, r.vProtocolo, r.statusCode, r.volumenTransf, r.marcaTiempo, r.idUsuario, "r.idSesion"))
\ No newline at end of file
# Definimos umbral como Web EPA
UMBRAL_SESIONES = 1800
class IdentificacionSesiones:
def __init__(self, usuarios, registros):
......@@ -8,8 +11,7 @@ def identificacionSesiones(registros, usuarios):
# Quitamos duplicados
aux = asignarIDs(usuarios)
umbral = 0
aux = reasignacionIDs(registros, usuarios, aux, umbral, )
aux = reasignacionIDs(registros, usuarios, aux)
return ordenarEntradas(usuarios, aux)
......@@ -25,14 +27,15 @@ def asignarIDs(registros, usuarios):
return aux
# Reasigna los ids para aquellos usuarios cuya diferencia de tiempo exceda el umbral
def reasignacionIDs(registros, usuarios, aux, umbral, reg):
entrada1 = 0
entrada2 = 0
def reasignacionIDs(registros, usuarios, aux, umbral):
for u in usuarios:
entrada1 =
diferenciaTiempo = entrada2.marcaTiempo - entrada1.marcaTiempo
if diferenciaTiempo > umbral:
entrada1 = 0
entrada2 = 0
for id in aux:
if u.hostRemoto == id.hostRemoto:
entrada1 = registros[id].marcaTiempo
diferenciaTiempo = entrada1 - entrada2
if diferenciaTiempo > UMBRAL_SESIONES:
aux.append(u.hostRemoto)
return aux
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment