Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
Miguel Ángel González Gallardo
/
AnalizadorLogs
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Pipelines
Wiki
Snippets
Settings
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit
75075733
authored
Mar 23, 2021
by
Juan Santos Poyato
Browse files
Options
_('Browse Files')
Download
Email Patches
Plain Diff
Cambios facilitar gui
parent
5750b522
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
72 additions
and
23 deletions
codigo/Cesta.py
codigo/Gestor.py
codigo/__pycache__/Cesta.cpython-39.pyc
codigo/__pycache__/Dato.cpython-39.pyc
codigo/__pycache__/ObtencionRegistro.cpython-39.pyc
codigo/__pycache__/idsUsuarioSesion.cpython-39.pyc
codigo/Cesta.py
View file @
75075733
class
Cesta
:
def
__init__
(
self
,
registros
):
def
__init__
(
self
,
registros
,
directorios
):
# Atributos
self
.
sesion
=
None
self
.
pagina
=
None
self
.
directorios
=
None
self
.
directorios
=
directorios
self
.
flags
=
None
self
.
transformarCesta
(
registros
)
# Se obtienen los directorios con mas del 0.5 peticiones de pagina junto a sus paginas
def
transformarCesta
(
self
,
registros
):
umbral
=
int
(
len
(
registros
)
*
5
/
1000
)
self
.
directorios
=
obtenerDirectorios
(
registros
,
umbral
)
def
obtenerDirectorios
(
registros
,
umbral
):
# Se obtienen los directorios aquellos que cumplen el umbral
def
obtenerDirectorios
(
registros
):
directorios
=
[]
contadores
=
[]
# Obtenemos los registros diferentes con sus contadores
for
r
in
registros
:
if
r
.
url
not
in
directorios
:
directorios
.
append
(
r
.
url
)
...
...
@@ -25,4 +20,14 @@ def obtenerDirectorios(registros, umbral):
pos
=
contadores
.
index
(
r
.
url
)
contadores
[
pos
]
+=
1
# Sacamos aquellas que no superan el umbral
umbral
=
int
(
len
(
registros
)
*
5
/
1000
)
return
directorios
,
contadores
# Se obtiene la cesta transformada final
def
obtenerCestaTransformada
(
registros
,
directorios
):
cesta
=
[]
return
cesta
\ No newline at end of file
codigo/Gestor.py
View file @
75075733
from
ObtencionRegistro
import
obtenerRegistros
from
Cesta
import
Cesta
from
Cesta
import
obtenerDirectorios
from
Cesta
import
obtenerCestaTransformada
# Se crean los registros, identificando usuarios y sesiones
r
=
obtenerRegistros
(
"../access_log_Aug95_reducido"
,
True
,
[],
[])
c
=
Cesta
(
r
)
RUTA_ARCHIVO
=
"../access_log_Aug95_reducido"
E_SPIDERING
=
True
EXTENSIONES_ADMITIDAS
=
[]
EXTENSIONES_NOADMITIDAS
=
[]
UMBRAL_DIRECTORIOS
=
0.5
# Se muestran resultados log
informe
=
(
def
printRegistro
(
registros
):
print
(
"Resultados: "
)
informe
=
(
" - Registro {} -
\n
Host Remoto: {}
\n
Fecha: {}
\n
Metodo de Petición: {}
\n
URL: {}
\n
Protocolo: {}
\n
Status Code: {}
\n
"
"Volumen de Transferencia: {}Marca de Tiempo: {}
\n
Id Usuario: {}
\n
Id Sesion: {}
\n
"
)
print
(
"Resultados: "
)
for
i
in
range
(
len
(
r
)):
print
(
informe
.
format
(
i
+
1
,
r
[
i
]
.
hostRemoto
,
r
[
i
]
.
fecha
,
r
[
i
]
.
metodoPeticion
,
r
[
i
]
.
url
,
r
[
i
]
.
vProtocolo
,
r
[
i
]
.
statusCode
,
r
[
i
]
.
volumenTransf
,
r
[
i
]
.
marcaTiempo
,
r
[
i
]
.
idUsuario
,
r
[
i
]
.
idSesion
))
"Volumen de Transferencia: {}Marca de Tiempo: {}
\n
Id Usuario: {}
\n
Id Sesion: {}
\n
"
)
i
=
0
for
r
in
registros
:
i
+=
1
print
(
informe
.
format
(
i
,
r
.
hostRemoto
,
r
.
fecha
,
r
.
metodoPeticion
,
r
.
url
,
r
.
vProtocolo
,
r
.
statusCode
,
r
.
volumenTransf
,
r
.
marcaTiempo
,
r
.
idUsuario
,
r
.
idSesion
)
)
def
printDirectorios
(
d
,
num_dir
,
num_reg
):
print
(
"Directorios más solicitados: "
)
informe
=
(
" - VALOR {} -
\n
Directorio: {}
\n
P (
%
): {}
\n
Cuenta: {}
\n
Proporción: {}
\n
"
)
barra
=
"*"
for
i
in
range
(
num_dir
):
barra
+=
barra
print
(
informe
.
format
(
""
,
float
(
num_dir
*
100
/
num_reg
),
num_dir
,
barra
))
for
di
in
d
:
barra
=
"*"
c
=
cont
[
d
.
index
(
di
)]
for
i
in
range
(
c
):
barra
+=
barra
print
(
informe
.
format
(
di
.
url
,
float
(
num_dir
*
100
/
num_reg
),
c
,
barra
))
def
printCestaTransformada
(
c
):
return
# Se crean los registros, identificando usuarios y sesiones y se muestran
r
=
obtenerRegistros
(
RUTA_ARCHIVO
,
E_SPIDERING
,
EXTENSIONES_ADMITIDAS
,
EXTENSIONES_NOADMITIDAS
)
num_reg
=
len
(
r
)
printRegistro
(
r
)
# Se obtienen los directorios con contadores y la cesta
umbral
=
int
(
num_reg
*
UMBRAL_DIRECTORIOS
)
d
,
cont
=
obtenerDirectorios
(
r
)
num_dir
=
len
(
d
)
printDirectorios
(
d
,
num_dir
,
num_reg
)
# Obtiene cesta transformada y la muestra
cesta
=
obtenerCestaTransformada
(
r
,
d
)
printCestaTransformada
(
cesta
)
codigo/__pycache__/Cesta.cpython-39.pyc
View file @
75075733
No preview for this file type
codigo/__pycache__/Dato.cpython-39.pyc
View file @
75075733
No preview for this file type
codigo/__pycache__/ObtencionRegistro.cpython-39.pyc
View file @
75075733
No preview for this file type
codigo/__pycache__/idsUsuarioSesion.cpython-39.pyc
View file @
75075733
No preview for this file type
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment