X-Git-Url: https://git.llucax.com/z.facultad/75.08/llamadas.git/blobdiff_plain/682e4cb90b4bad0343c47d45adf38b4a5d3ff0e0..1c702b91539b8f460d5ffef10c3d245456ea2d23:/doc/Informe7508.lyx diff --git a/doc/Informe7508.lyx b/doc/Informe7508.lyx index e50bdd9..1dd111b 100644 --- a/doc/Informe7508.lyx +++ b/doc/Informe7508.lyx @@ -52,7 +52,7 @@ Leandro Lucarella (77891) Ricardo Markiewicz (78226) \layout Date -Primera Entrega, 28 de Junio del 2004 +26 de Octubre del 2004 \layout Standard @@ -73,11 +73,11 @@ El programa en su totalidad va a ser ejecutado por un configuración diferente es posible pero queda en manos del administrador. \layout Itemize -En los archivos de llamada se valida que sean numeros, y para validar la +En los archivos de llamada se valida que sean números, y para validar la fecha no se tiene en cuenta casos particulares como el 29, 30, 31 de febrero. \layout Itemize -Todos los meses pueden tener 31 dias. +Todos los meses pueden tener 31 días. \layout Itemize Aficonf utiliza números para describir las acciones Nuevo y Buscar. @@ -86,6 +86,11 @@ Aficonf utiliza n la acción. \layout Section + +\begin_inset LatexCommand \label{sec:Problemas-relevantes} + +\end_inset + Problemas relevantes \layout Itemize @@ -104,32 +109,34 @@ As ~$HOME/.antifraude \family default , para ser mas consistentes con la manera de trabajar en Unix. - Lo ideal ubiera sido utilizar + Lo ideal hubiera sido utilizar \family typewriter /etc/antifraude \family default -, pero como no podríamos suponer root access preferimos directamente trabajar - en el home del usuario. +, pero como no podríamos suponer acceso de +\emph on +root +\emph default + preferimos directamente trabajar en el directorio del usuario. \layout Section Instalación -\layout Standard +\layout Comment Copiar del README cuando este terminado y extenderlo un poco si se considera necesario. \layout Section -Comandos Desarollados +Comandos Desarrollados \layout Subsection AFIMONIO -\layout Standard +\layout Subsubsection +Tipo de comando +\layout Standard -\series bold -Tipo de comando: -\series default - Solicitado +Solicitado. \layout Subsubsection Archivos de Input @@ -160,141 +167,222 @@ so Archivos de Output \layout Standard -El afimonio genera una salida al archivo afimonio.log la cual contiene informació -n sobre la ejecución del programa. +El afimonio genera una salida al archivo +\family typewriter +afimonio.log +\family default + la cual contiene información sobre la ejecución del programa. \layout Standard Si un archivo es válido, se añade una línea con el siguiente formato: -\layout Standard +\layout LyX-Code -"$fecha $USER afimonio: "Se detecta archivo de llamadas $file" +$fecha $USER afimonio: "Se detecta archivo de llamadas $file" \layout Standard Si el archivo tuviera un nombre inválido, la línea seria la siguiente: -\layout Standard +\layout LyX-Code -"$fecha $USER afimonio:"Se rechaza el archivo $file". - +$fecha $USER afimonio: "Se rechaza el archivo $file" \layout Standard -donde -\layout Standard +donde: +\layout Description -$fecha: fecha actual con formato Dia-Mes-Año-Hora:Minuto. - -\layout Standard -$USER: nombre de usuario que ejecuto el script. - -\layout Standard +\family typewriter +$fecha +\family default + fecha actual con formato Día-Mes-Año-Hora:Minuto. +\layout Description -$file: nombre del archivo que se procesó. - + +\family typewriter +$USER +\family default + nombre de usuario que ejecuto el script. +\layout Description + + +\family typewriter +$file +\family default + nombre del archivo que se procesó. \layout Subsubsection Ejemplos de invocación -\layout LyX-Code +\layout Paragraph -:afimonio/bin$> ./afimonio -\layout LyX-Code -:afimonio/bin$> nohup ./afimonio & -\layout LyX-Code +\family typewriter +./afimonio +\layout Standard + +Corre el programa en primer plano. +\layout Paragraph -:afimonio/bin$> ./afimonio_daemon.sh -\layout LyX-Code - afimonio_daemon.sh (start|stop|status) +\family typewriter +nohup ./afimonio & +\layout Standard + +Corre el programa en segundo plano, evitando que se cierre al morir el padre + desasociándolo de la terminal. + La salida del programa queda en el archivo +\family typewriter +nohup.out +\family default + a menos que se redirija a otro archivo. \layout Subsubsection Código Fuente -\layout Standard +\layout Comment Copy Paste cuando este cerrado. \layout Subsection ANTIFRAUDE -\layout Standard +\layout Subsubsection +Tipo de comando +\layout Standard -\series bold -Tipo de comando: -\series default - Solicitado +Solicitado. \layout Subsubsection Archivos de Input \layout Standard -Procesa los archivos de llamadas que encuentre en el momento de invocacion +Procesa los archivos de llamadas que encuentre en el momento de invocación en el directorio \family typewriter $PATH_ANTIFRAUDE/$DATADIR/enproceso \family default . El demonio +\family typewriter \series bold -Afimonio +afimonio +\family default \series default será quien alimentará al +\family typewriter \series bold -Antifraude +antifraude +\family default \series default con dichos archivos, no obstante se lo puede alimentar con archivos de - llamdas en forma manual, situándolos en el directorio anteriormente descripto. + llamadas en forma manual, situándolos en el directorio anteriormente descripto. +\layout Standard + +Este comando, en el momento de invocacion genera y guarda internamente un + listado de los archivos de llamadas presences en el directorio +\family typewriter +/enproceso +\family default +, ordenándolos por fecha (establecida en el nombre del archivo) en forma + ascendente. + Dado que utiliza durante toda su ejecución esta lista interna, el +\family typewriter +\series bold +Afimonio +\family default +\series default + puede alimentar al directorio +\family typewriter +/enproceso +\family default + con nuevos archivos mientras el +\family typewriter +\series bold +Antifraude +\family default +\series default + corre, pero los mismos no serán tenidos en cuenta (esto es, procesados), + hasta la próxima invocación del comando. \layout Subsubsection Archivos de Output -\layout Itemize +\layout Description -\series bold -Antifraude.log: -\series default - Se loguea en este archivo el procesamiento de los registros, warnings provocado -s por registros no validos y alarmas emitidas por registros que matchean - contra un umbral. -\layout Itemize +\family typewriter +Antifraude.log +\family default + En este archivo se guarda información del procesamiento de los registros, + advertencias provocados por registros no validos y alarmas emitidas por + registros que cumplen con un umbral. +\layout Description -\series bold -Alarmas.txt: -\series default - Se loguean en este archivo las alarmas provocadas por registros en los - archivos de llamadas, que hayan matcheado un umbral determinado del archivo - umbrales.param. +\family typewriter +Alarmas.txt +\family default + En este archivo se guarda información de las alarmas provocadas por registros + en los archivos de llamadas, que hayan cumplido un umbral determinado del + archivo +\family typewriter +umbrales.param +\family default +. \layout Subsubsection Ejemplos de invocación -\layout LyX-Code +\layout Paragraph -:antifraude/bin$> perl antifraude.pl -\layout LyX-Code -:antifraude/bin$> perl antifraude.pl & +\family typewriter +./antifraude.pl +\layout Standard + +El programa procesa las llamadas +\family typewriter +enproceso +\family default + como indica el enunciado en primer plano. +\layout Paragraph + + +\family typewriter +perl antifraude.pl +\layout Standard + +Ídem anterior. +\layout Paragraph + +./antifraude.pl & +\layout Standard + +Ídem anterior pero procesa en segundo plano. \layout Subsubsection Código Fuente -\layout Standard +\layout Comment Copy Paste cuando este cerrado. \layout Subsection AFICONF -\layout Standard +\layout Subsubsection +Tipo de comando +\layout Standard -\series bold -Tipo de comando: -\series default - Solicitado +Solicitado. \layout Subsubsection Archivos de Input \layout Standard -El comando utiliza los archivos umbrales.param y oridesti.txt situados en - +El comando utiliza los archivos +\family typewriter +umbrales.param +\family default + y +\family typewriter +oridesti.txt +\family default + situados en \family typewriter ~$HOME/.antifraude/ \layout Subsubsection @@ -302,14 +390,22 @@ El comando utiliza los archivos umbrales.param y oridesti.txt situados en Archivos de Output \layout Standard -Solo escribe en umbrales.param de ser solicitado por el usuario, ya sea por - la alta o baja de un umbral. +Solo escribe en +\family typewriter +umbrales.param +\family default + de ser solicitado por el usuario, ya sea por la alta o baja de un umbral. \layout Subsubsection Ejemplos de invocación -\layout LyX-Code +\layout Paragraph + -:aficonf/bin$> ./aficonf +\family typewriter +./aficonf +\layout Standard + +Realiza lo pedido en el enunciado. \layout Subsubsection Código Fuente @@ -319,13 +415,16 @@ Copy Paste cuando este cerrado. \layout Subsection CALLGEN -\layout Standard +\layout Subsubsection +Tipo de comando +\layout Standard -\series bold -Tipo de comando: -\series default - Auxiliar, escrito en PERL +Auxiliar, escrito en +\family typewriter +perl +\family default +. \layout Subsubsection Justificación de su uso @@ -353,8 +452,15 @@ oridesti.txt Archivos de Output \layout Standard -Crea una cantidad N (especificada por el usuario) de archivos con nombre - y formato de Archivo de Llamadas en el directorio actual. +Crea una cantidad +\family typewriter +N +\family default + (especificada por el usuario) de archivos con nombre y formato de +\emph on +Archivo de Llamadas +\emph default + en el directorio actual. Tanto el nombre como la cantidad de líneas y su contenido es generado aleatoria mente (respetando el formato mencionado y con valores racionales). \layout Subsubsection @@ -481,7 +587,7 @@ M \layout Standard -max_lines +max_linaes \end_inset @@ -513,13 +619,8 @@ M \layout Standard - -\series bold -NOTA: -\series default - Pueden cambiarse los valores por defecto editando el código fuente del - comando, en la sección de configuración que se encuentra al comienzo del - mismo. +Pueden cambiarse los valores por defecto editando el código fuente del comando, + en la sección de configuración que se encuentra al comienzo del mismo. También puede cambiarse el mínimo y máximo año (por defecto 1999 y 2004) y el mínimo y máximo código de central (por defecto 0000 y 9999). \layout Subsubsection @@ -527,46 +628,71 @@ NOTA: Ejemplos de invocación \layout Paragraph + +\family typewriter ./callgen \layout Paragraph \series medium Se escriben por entrada estándar los códigos de origen/destino, se presiona - Ctrl-D para cerrar el descriptor de archivo de la entrada estándar y se - generan 10 archivos con entre 1000 y 5000 líneas cada uno. + +\family typewriter +\series default +Ctrl-D +\family default +\series medium + para cerrar el descriptor de archivo de la entrada estándar y se generan + 10 archivos con entre 1000 y 5000 líneas cada uno. \layout Paragraph + +\family typewriter ./callgen 2 < oridesti.txt \layout Paragraph \series medium -Genera 2 archivos con entre 1000 y 5000 líneas cada uno tomando los códigos - de origen/destino del archivo origesti.txt. +Genera 2 archivos con entre 1000 y 5000 líneas cada uno tomando los códigos + de origen/destino del archivo +\family typewriter +origesti.txt +\family default +. \layout Paragraph + +\family typewriter ./callgen 5 10 < oridesti.txt \layout Paragraph \series medium -Genera 5 archivos con entre 10 y 5000 líneas cada uno tomando los códigos - de origen/destino del archivo origesti.txt. +Genera 5 archivos con entre 10 y 5000 líneas cada uno tomando los códigos + de origen/destino del archivo +\family typewriter +origesti.txt +\family default +. \layout Paragraph + +\family typewriter ./callgen 50 10 50 < oridesti.txt \layout Paragraph \series medium -Genera 50 archivos con entre 10 y 50 líneas cada uno tomando los códigos - de origen/destino del archivo origesti.txt. - +Genera 50 archivos con entre 10 y 50 líneas cada uno tomando los códigos + de origen/destino del archivo +\family typewriter +origesti.txt +\family default +. \layout Subsubsection Código Fuente -\layout Standard +\layout Comment Copy Paste cuando este cerrado. \layout Section @@ -575,15 +701,76 @@ Archivos \layout Subsection Archivos del Enunciado -\layout Standard +\layout Comment -[ Por cada uno se debe poner nombre y detallar su estructura interna ] +Por cada uno se debe poner nombre y detallar su estructura interna. \layout Subsection Archivos Auxiliares +\layout Subsubsection + + +\family typewriter +afimonio.conf +\layout Standard + +El archivo de configuración +\family typewriter +~/.antifraude/conf/afimonio.conf +\family default + almacena las rutas a los directorios necesarios para la ejecución del script + +\family typewriter +afimonio +\family default + y la ruta, nombre, y tamaño máximo del archivo de log. + +\layout Subsubsection + + +\family typewriter +antifraude.conf \layout Standard -[ Por cada uno se debe poner nombre y detallar su estructura interna ] +El archivo de configuración +\family typewriter +~/.antifraude/conf/antifraude.conf +\family default + almacena las rutas a los directorios necesarios para la ejecución del script + +\family typewriter +antifraude.pl +\family default + y la ruta, nombre, y tamaño máximo del archivo de log. + +\layout Subsubsection + + +\family typewriter +aficonf.conf +\layout Standard + +El archivo de configuración +\family typewriter +~/.antifraude/conf/aficonf.conf +\family default + almacena las rutas a los directorios necesarios para la ejecución del script + +\family typewriter +aficonf +\family default + y la ruta, nombre, y tamaño máximo del archivo de log. + +\layout Standard + +Estos archivos fueron creados para que los diferentes scripts tengan un + lugar común donde buscar esa información para salvar el problema comentado + en el punto +\begin_inset LatexCommand \vref{sec:Problemas-relevantes} + +\end_inset + +. \layout Subsection Set de Prueba (testcalls.tar.gz) @@ -594,20 +781,31 @@ do en el archivo \family typewriter testcalls.tar.gz \family default -, situado en el directorio /INST, del paquete de instalación. +, situado en el directorio +\family typewriter +/inst +\family default +, del paquete de instalación. El set de prueba se copia automáticamente en el momento en que se instale el componente +\family typewriter \series bold -ANTIFRAUDE +antifraude +\family default \series default , dejando el escenario listo para procesarlos en el momento en que sea arrancado el +\family typewriter \series bold -AFIMONIO +afimonio +\family default + \series default o bien ejecutando el +\family typewriter \series bold -ANTIFRAUDE +antifraude +\family default \series default en forma manual. \layout Standard @@ -620,32 +818,46 @@ Este set de prueba consta de \layout Itemize 14 archivos de llamadas generados con el +\family typewriter \series bold -CALLGEN +callgen +\family default \series default , con entre 1000 y 5000 registros cada uno, y fecha en el rango año 1999 - - 2004. + a 2004. \layout Itemize -1 archivo de llamadas con registros validos y otros no validos. +1 archivo de llamadas con registros válidos y otros no válidos. \layout Itemize 1 archivo con nombre válido según el formato YYYYMMDDhhmm.nnnn, pero con - texto dentro suyo, el cual es rechazado por Antifraude. + contenido inválido, el cual es rechazado por +\family typewriter +\series bold +antifraude +\family default +\series default +. \layout Itemize -1 archivo con nombre nó válido rechazado en instancia previa por el Afimonio. +1 archivo con nombre no válido rechazado en instancia previa por +\family typewriter +\series bold +afimonio +\family default +\series default +. \layout Standard Se describen en la siguiente tabla, los archivos y registros que disparan alarmas o tienen close matches contra los 25 umbrales distribuidos en el - paquete de instalacion, via el umbrales.param: + paquete de instalación, vía el umbrales.param: \layout Standard \begin_inset Float table wide false -collapsed true +collapsed false \layout Caption @@ -679,7 +891,8 @@ Archivo \series bold -Linea Nro +Nro. + Línea \end_inset @@ -689,7 +902,7 @@ Linea Nro \series bold -Matched Umbral +Umbral \end_inset @@ -855,7 +1068,7 @@ Matched Umbral \layout Standard -idem +ídem \end_inset @@ -881,7 +1094,7 @@ idem \layout Standard -idem +ídem \end_inset @@ -959,7 +1172,7 @@ idem \layout Standard -idem +ídem \end_inset @@ -1011,7 +1224,7 @@ idem \layout Standard -idem +ídem \end_inset @@ -1037,7 +1250,7 @@ idem \layout Standard -idem +ídem \end_inset @@ -1063,7 +1276,7 @@ idem \layout Standard -idem +ídem \end_inset @@ -1089,7 +1302,7 @@ idem \layout Standard -idem +ídem \end_inset @@ -1141,7 +1354,7 @@ idem \layout Standard -idem +ídem \end_inset @@ -1167,7 +1380,7 @@ idem \layout Standard -idem +ídem \end_inset @@ -1245,7 +1458,7 @@ Close match umbral 22, difiere tipo de llamada \layout Standard -idem +ídem \end_inset @@ -1301,61 +1514,79 @@ idem \layout Paragraph -Archivo 199908220733.4515 +Archivo +\family typewriter +199908220733.4515 \layout Paragraph \series medium -Posee registros no validos detallados a continuacion. - Los registros se contabilizan de 0 a N (Linea 1 = Reg 0) +Posee registros no válidos detallados a continuación. + Los registros se contabilizan de 0 a N (Línea 1 = Reg 0) \layout Itemize \series bold Registro 3 \series default - -> Posee un 9no campo 'Bogus' + -> Posee un 9no campo +\emph on +bogus \layout Itemize \series bold Registro 27 \series default - -> Posee un 9no campo 'Bogus' + -> Posee un 9no campo +\emph on +bogus \layout Itemize \series bold Registro 31 \series default - -> Posee un tipo de llamada 'W' no valida + -> Posee un tipo de llamada +\family typewriter +W +\family default + no valida \layout Itemize \series bold Registro 41 \series default - -> El numero de linea (campo1) no es numerico, es un string 'ABCD' + -> El número de línea (campo1) no es numérico, es un string +\family typewriter +'ABCD' \layout Itemize \series bold Registro 52 \series default - -> Tiene insuficiente cantidad de campos (siete) + -> Tiene cantidad de campos insuficiente (siete) \layout Standard -Estos registros emitirán errores plasmados en el antifraude.log. - Para verificar esto, realizar un search en el logfile, sobre el nombre - del archivo, y ubicarse en el sector donde se indica el comienzo del procesamie -nto del mismo con ¨ +Estos registros emitirán errores plasmados en el +\family typewriter +antifraude.log +\family default +. + Para verificar esto, realizar una búsqueda en el log, sobre el nombre del + archivo, y ubicarse en el sector donde se indica el comienzo del procesamiento + del mismo con ¨ \family typewriter Inicio proceso de: 199908220733.4515 \family default ¨. \layout Paragraph -Archivo 200412010000.6666 +Archivo +\family typewriter +200412010000.6666 \layout Paragraph @@ -1364,20 +1595,28 @@ Es un archivo de texto el cual pasa el control de Afimonio, pero luego sus lineas son descartadas por antifraude y dicho error emitido en el antifraude.log \layout Paragraph -Archivo 200223.1234 +Archivo +\family typewriter +200223.1234 \layout Paragraph \series medium El nombre del archivo no es conforme al formato de nombre estipulado en - el TP y el mismo es rechazado de antemano por Afimonio. + el TP y el mismo es rechazado de antemano por +\family typewriter +\series default +afimonio +\family default +\series medium +. \layout Section Apéndice A -\layout Standard +\layout Comment -(Esto deberia ser una hoja aparte que solo diga 1.6 Apéndice A) y las hojas +Esto deberia ser una hoja aparte que solo diga 1.6 Apéndice A) y las hojas posteriores son las páginas 3 en adelante del PDF oficial de la catedra, - sacando al parte de archivos. - 3-15 más precisamente es lo que iria). + sacando la parte de archivos. + 3-15 más precisamente es lo que iria. \the_end