SlideShare una empresa de Scribd logo
1 de 16
Descargar para leer sin conexión
Log4j (Logging Framework)
Log4j (Logging Framework)
Agenda
 Introducción a Log4j.
 Características.
 Diagrama de componentes.
 Niveles de trazas.
 Appenders.
 Layouts.
 Filters.
 Tipos de configuraciones.
Log4j (Logging Framework)
Introducción a Log4j
Es una biblioteca open source desarrollada en Java por la Apache
Software Foundation que permite a los desarrolladores de software elegir la
salida y el nivel de granularidad de los mensajes o “logs” (logging) a tiempo
de ejecución y no a tiempo de compilación como es comúnmente realizado.
La configuración de salida y granularidad de los mensajes es realizada a
tiempo de ejecución mediante el uso de archivos de configuración
externos. Log4J ha sido implementado en otros lenguajes como: C, C++,
C#, Perl, Python, Ruby y Eiffel.
Log4j (Logging Framework)
Características
 Diferentes niveles de traza. (Error, información, depurar).
 Filtros según categoría.
 Redirección de las trazas a diferentes destinos. (A un archivo, a consola,
a Base de datos, etc).
 Diferentes formatos de visualización. (Visualizar fecha, línea, nombre de
la clase, etc).
 Configuración por ficheros.
Log4j (Logging Framework)
Diagrama de componentes
Log4j (Logging Framework)
Niveles
Por defecto Log4J tiene 6 niveles de prioridad para los mensajes. Además existen otros dos niveles extras
Niveles de prioridad (De mayor -poco detalle- a menor -mucho detalle-):
 FATAL: Se utiliza para mensajes críticos del sistema, generalmente después de guardar el mensaje el
programa abortará.
 ERROR: Se utiliza en mensajes de error de la aplicación que se desea guardar, estos eventos afectan al
programa pero lo dejan seguir funcionando, como por ejemplo que algún parámetro de configuración no
es correcto y se carga el parámetro por defecto.
 WARN: Se utiliza para mensajes de alerta sobre eventos que se desea mantener constancia, pero que no
afectan al correcto funcionamiento del programa.
 INFO: Se utiliza para mensajes similares al modo "verbose" en otras aplicaciones.
 DEBUG: Se utiliza para escribir mensajes de depuración. Este nivel no debe estar activado cuando la
aplicación se encuentre en producción.
 TRACE: Se utiliza para mostrar mensajes con un mayor nivel de detalle que debug.
Extras:
 ALL: Este es el nivel de máximo detalle, habilita todos los logs (en general equivale a TRACE).
 OFF: Este es el nivel de mínimo detalle, deshabilita todos los logs.
Log4j (Logging Framework)
Herencia de Niveles
Logger
name
Assigned
level
Inherited
level
root Proot Proot
X Px Px
X.Y none Px
X.Y.Z Pxyz Pxyz
Ejemplo 3
Logger
name
Assigned
level
Inherited
level
root Proot Proot
X none Proot
X.Y none Proot
X.Y.Z none Proot
Ejemplo 1
Logger
name
Assigned
level
Inherited
level
root Proot Proot
X Px Px
X.Y Pxy Pxy
X.Y.Z Pxyz Pxyz
Ejemplo 2
Logger
name
Assigned
level
Inherited
level
root Proot Proot
X Px Px
X.Y none Px
X.Y.Z none Px
Ejemplo 4
Log4j (Logging Framework)
Appenders
En Log4J los mensajes son enviados a una (o varias) salida de destino, lo que se denomina un appender.
Existen varios appenders disponibles y configurados, aunque también podemos crear y configurar nuestros
propios appenders.
Tipos de appenders:
- Console
- File
- Rolling file
- GUI
- TCP/IP
- NT Event log
- Unix Syslog daemon
- JDBC
- SMTP
- JMS
Casi nunca es utilizado en un entorno de producción la salida a la consola (ConsoleAppender) ya que
perdería gran parte de la utilidad de Log4J.
Log4j (Logging Framework)
Logger
Name
Added
Appenders
Additivity
Flag
Output Targets Comment
Root A1 not applicable A1
x A-x1, A-x2 true A1, A-x1, A-x2 Appenders de "x" y root.
x.y none true A1, A-x1, A-x2 Appenders de "x" y root.
x.y.z A-xyz1 true A1, A-x1, A-x2, A-xyz1
Appenders en "x.y.z", "x"
and root.
security A-sec false A-sec
Los appenders no se
acumulan porque el flag es
false.
security.access none true A-sec
Solo appenders de
"security" porque el flag
additivity esta en false en
"security“.
Log4j (Logging Framework)
Layouts
Es el responsable de dar un formato de presentación a los mensajes.
Permite presentar el mensaje con el formato necesario para almacenarlo simplemente en un archivo de
texto .log (SimpleLayout y PatternLayout), en una tabla HTML (HTMLLayout), o en un archivo XML
(XMLLayout).
Además podemos añadir información extra al mensaje, como la fecha en que se generó, la clase que lo
generó, el nivel que posee, etc.
Log4j (Logging Framework)
Simbolos
%c Logger, %c{2 } last 2 partial names
%C Class name (full agony), %C{2 } last 2 partial names
%d{dd MMM yyyy HH:MM:ss } Date, format see java.text.SimpleDateFormat
%F File name
%l Location (caution: compiler-option-dependently)
%L Line number
%m user-defined message
%M Method name
%p Level
%r Milliseconds since program start
%t Threadname
%x, %X see Doku
%% individual percentage sign
Cuidado con estos: %C, %F, %l, %L, %M Estos simbolos son pesados y causan que la aplicación valla mas
lento.
Log4j (Logging Framework)
Filters
Cada appender puede tener varios filtros o ninguno, los cuales se encargan de ejecutar distintas
validaciones(o filtros) sobre los mensajes logueados.
Además podemos añadir nuestros propios filtros de forma programática.
Algunos filtros implementados:
- StringMatchFilter
- LevelRangeFilter
- LevelMatchFilter
Log4j (Logging Framework)
Ejemplos Filtros
Log4j (Logging Framework)
Tipos de configuraciones
 Mediante un archivo de propiedades.
 Mediante un archivo XML
Log4j (Logging Framework)
Configuración XML
Log4j (Logging Framework)
Configuración Archivo Properties

Más contenido relacionado

La actualidad más candente

Caracteristicas de C Sharp
Caracteristicas de C SharpCaracteristicas de C Sharp
Caracteristicas de C SharpEdgardo Martinez
 
Fundamentos de Java / 15 consejos prácticos sobre Java que cambiarán la for...
Fundamentos de Java /   15 consejos prácticos sobre Java que cambiarán la for...Fundamentos de Java /   15 consejos prácticos sobre Java que cambiarán la for...
Fundamentos de Java / 15 consejos prácticos sobre Java que cambiarán la for...Eudris Cabrera
 
Java script tarea
Java script tareaJava script tarea
Java script tareasaullopes24
 
Programacion Orientada a Objetos
Programacion Orientada a ObjetosProgramacion Orientada a Objetos
Programacion Orientada a ObjetosManuel Antonio
 
Características de c sharp
Características de c sharpCaracterísticas de c sharp
Características de c sharpuccvirtual
 
Compiladores - Flex y Bison
Compiladores - Flex y BisonCompiladores - Flex y Bison
Compiladores - Flex y BisonSteven Tabango
 
Funciones subrutinas y procedimientos
Funciones subrutinas y procedimientosFunciones subrutinas y procedimientos
Funciones subrutinas y procedimientosjnarchie
 
Clase2 t programas - unidades - workspaces - Delphi
Clase2 t   programas - unidades - workspaces - DelphiClase2 t   programas - unidades - workspaces - Delphi
Clase2 t programas - unidades - workspaces - DelphiJulio Antonio Huaman Chuque
 
Programacin estructurada
Programacin estructuradaProgramacin estructurada
Programacin estructuradaRubixita12
 
4035426 ejercicios-resueltos-en-pascal
4035426 ejercicios-resueltos-en-pascal4035426 ejercicios-resueltos-en-pascal
4035426 ejercicios-resueltos-en-pascalLuis Fernando Jimenez
 

La actualidad más candente (15)

Caracteristicas de C Sharp
Caracteristicas de C SharpCaracteristicas de C Sharp
Caracteristicas de C Sharp
 
Turbo c
Turbo cTurbo c
Turbo c
 
Programacion en C#
Programacion en C#Programacion en C#
Programacion en C#
 
Fundamentos de Java / 15 consejos prácticos sobre Java que cambiarán la for...
Fundamentos de Java /   15 consejos prácticos sobre Java que cambiarán la for...Fundamentos de Java /   15 consejos prácticos sobre Java que cambiarán la for...
Fundamentos de Java / 15 consejos prácticos sobre Java que cambiarán la for...
 
Java script tarea
Java script tareaJava script tarea
Java script tarea
 
Programacion Orientada a Objetos
Programacion Orientada a ObjetosProgramacion Orientada a Objetos
Programacion Orientada a Objetos
 
TABLA DE SIMBOLOS
TABLA DE SIMBOLOSTABLA DE SIMBOLOS
TABLA DE SIMBOLOS
 
Características de c sharp
Características de c sharpCaracterísticas de c sharp
Características de c sharp
 
Turbo c++
Turbo c++Turbo c++
Turbo c++
 
Compiladores - Flex y Bison
Compiladores - Flex y BisonCompiladores - Flex y Bison
Compiladores - Flex y Bison
 
Funciones subrutinas y procedimientos
Funciones subrutinas y procedimientosFunciones subrutinas y procedimientos
Funciones subrutinas y procedimientos
 
UNIDAD 3 MODULARIZACIÓN
UNIDAD 3 MODULARIZACIÓNUNIDAD 3 MODULARIZACIÓN
UNIDAD 3 MODULARIZACIÓN
 
Clase2 t programas - unidades - workspaces - Delphi
Clase2 t   programas - unidades - workspaces - DelphiClase2 t   programas - unidades - workspaces - Delphi
Clase2 t programas - unidades - workspaces - Delphi
 
Programacin estructurada
Programacin estructuradaProgramacin estructurada
Programacin estructurada
 
4035426 ejercicios-resueltos-en-pascal
4035426 ejercicios-resueltos-en-pascal4035426 ejercicios-resueltos-en-pascal
4035426 ejercicios-resueltos-en-pascal
 

Destacado (11)

Thread 02
Thread 02Thread 02
Thread 02
 
Thread 01
Thread 01Thread 01
Thread 01
 
Sockets UDP
Sockets UDPSockets UDP
Sockets UDP
 
Sockets TCP
Sockets TCPSockets TCP
Sockets TCP
 
Comunicación en Grupo
Comunicación en GrupoComunicación en Grupo
Comunicación en Grupo
 
Monólog os avanzado
Monólog os avanzadoMonólog os avanzado
Monólog os avanzado
 
Use of Monolog with PHP
Use of Monolog with PHPUse of Monolog with PHP
Use of Monolog with PHP
 
03 Oop
03   Oop03   Oop
03 Oop
 
Application Logging With Logstash
Application Logging With LogstashApplication Logging With Logstash
Application Logging With Logstash
 
LogStash - Yes, logging can be awesome
LogStash - Yes, logging can be awesomeLogStash - Yes, logging can be awesome
LogStash - Yes, logging can be awesome
 
Integrando Redis en aplicaciones Symfony2
Integrando Redis en aplicaciones Symfony2Integrando Redis en aplicaciones Symfony2
Integrando Redis en aplicaciones Symfony2
 

Similar a Log4J

Tutorial de prolog
Tutorial de prologTutorial de prolog
Tutorial de prologIvan
 
Desarrollo a aplicaciones . net (1)
Desarrollo a aplicaciones . net (1)Desarrollo a aplicaciones . net (1)
Desarrollo a aplicaciones . net (1)jenny21071
 
Arquitectura del JDK.pptx
Arquitectura del JDK.pptxArquitectura del JDK.pptx
Arquitectura del JDK.pptxAnthonySacha
 
Log en Aplicaciones Java y JavaEE
Log en Aplicaciones Java y JavaEELog en Aplicaciones Java y JavaEE
Log en Aplicaciones Java y JavaEEVortexbird
 
Java fundamentos -15 consejos prácticos - Encuentro Universitario Comunidad J...
Java fundamentos -15 consejos prácticos - Encuentro Universitario Comunidad J...Java fundamentos -15 consejos prácticos - Encuentro Universitario Comunidad J...
Java fundamentos -15 consejos prácticos - Encuentro Universitario Comunidad J...Eudris Cabrera
 
Java fundamentos -15 consejos practicos open saturday 2018
Java fundamentos -15 consejos practicos open saturday 2018Java fundamentos -15 consejos practicos open saturday 2018
Java fundamentos -15 consejos practicos open saturday 2018Eudris Cabrera
 
13 instalación y configuración o3
13   instalación y configuración o313   instalación y configuración o3
13 instalación y configuración o3olayaipanaque
 
P2 act1 cuadro comparativo
P2 act1 cuadro comparativoP2 act1 cuadro comparativo
P2 act1 cuadro comparativoRoberto Cortez
 
37 supervisión del sistema
37  supervisión del sistema37  supervisión del sistema
37 supervisión del sistemaAprende Viendo
 

Similar a Log4J (20)

Log4j 1.2.15 Short Manual
Log4j 1.2.15 Short ManualLog4j 1.2.15 Short Manual
Log4j 1.2.15 Short Manual
 
Tutorial de prolog
Tutorial de prologTutorial de prolog
Tutorial de prolog
 
Desarrollo a aplicaciones . net (1)
Desarrollo a aplicaciones . net (1)Desarrollo a aplicaciones . net (1)
Desarrollo a aplicaciones . net (1)
 
Arquitectura del JDK.pptx
Arquitectura del JDK.pptxArquitectura del JDK.pptx
Arquitectura del JDK.pptx
 
Log en Aplicaciones Java y JavaEE
Log en Aplicaciones Java y JavaEELog en Aplicaciones Java y JavaEE
Log en Aplicaciones Java y JavaEE
 
Java fundamentos -15 consejos prácticos - Encuentro Universitario Comunidad J...
Java fundamentos -15 consejos prácticos - Encuentro Universitario Comunidad J...Java fundamentos -15 consejos prácticos - Encuentro Universitario Comunidad J...
Java fundamentos -15 consejos prácticos - Encuentro Universitario Comunidad J...
 
Java fundamentos -15 consejos practicos open saturday 2018
Java fundamentos -15 consejos practicos open saturday 2018Java fundamentos -15 consejos practicos open saturday 2018
Java fundamentos -15 consejos practicos open saturday 2018
 
Conceptos estructuras de datos
Conceptos estructuras de datosConceptos estructuras de datos
Conceptos estructuras de datos
 
Tema4.pdf
Tema4.pdfTema4.pdf
Tema4.pdf
 
Unmsm02 2008
Unmsm02 2008Unmsm02 2008
Unmsm02 2008
 
13 instalación y configuración o3
13   instalación y configuración o313   instalación y configuración o3
13 instalación y configuración o3
 
Flash player security
Flash player securityFlash player security
Flash player security
 
P2 act1 cuadro comparativo
P2 act1 cuadro comparativoP2 act1 cuadro comparativo
P2 act1 cuadro comparativo
 
Introduccion actionscript
Introduccion actionscriptIntroduccion actionscript
Introduccion actionscript
 
37 supervisión del sistema
37  supervisión del sistema37  supervisión del sistema
37 supervisión del sistema
 
Tarea3
Tarea3 Tarea3
Tarea3
 
Lenguaje de programacion
Lenguaje de programacionLenguaje de programacion
Lenguaje de programacion
 
Grupo1
Grupo1Grupo1
Grupo1
 
SMBD 2011
SMBD 2011SMBD 2011
SMBD 2011
 
SMBD 2011
SMBD 2011SMBD 2011
SMBD 2011
 

Más de Luis Miguel De Bello (16)

Java Web Services - REST
Java Web Services - RESTJava Web Services - REST
Java Web Services - REST
 
Java Web Services - SOAP Temas Adicionales
Java Web Services - SOAP Temas AdicionalesJava Web Services - SOAP Temas Adicionales
Java Web Services - SOAP Temas Adicionales
 
Java Web Services - SOAP Binding
Java Web Services - SOAP BindingJava Web Services - SOAP Binding
Java Web Services - SOAP Binding
 
Java Web Services - Introduccion
Java Web Services - IntroduccionJava Web Services - Introduccion
Java Web Services - Introduccion
 
Java Web - JSF
Java Web - JSFJava Web - JSF
Java Web - JSF
 
Java Web - Struts
Java Web - StrutsJava Web - Struts
Java Web - Struts
 
Java Web - JSP
Java Web - JSPJava Web - JSP
Java Web - JSP
 
Java Web - Servlet
Java Web - ServletJava Web - Servlet
Java Web - Servlet
 
Base de datos - Clase 2
Base de datos - Clase 2Base de datos - Clase 2
Base de datos - Clase 2
 
Base de datos - Clase 3
Base de datos - Clase 3Base de datos - Clase 3
Base de datos - Clase 3
 
Base de datos - Clase 1
Base de datos - Clase 1Base de datos - Clase 1
Base de datos - Clase 1
 
Base de datos - Clase 4
Base de datos - Clase 4Base de datos - Clase 4
Base de datos - Clase 4
 
Java Web - Session
Java Web - SessionJava Web - Session
Java Web - Session
 
Java Web - Introduccion
Java Web - IntroduccionJava Web - Introduccion
Java Web - Introduccion
 
Administración de memoria en java
Administración de memoria en javaAdministración de memoria en java
Administración de memoria en java
 
Best Practices
Best PracticesBest Practices
Best Practices
 

Último

LA ELECTRICIDAD Y LA ELECTRÓNICA TRABAJO EN GRUPO
LA ELECTRICIDAD Y LA ELECTRÓNICA TRABAJO EN GRUPOLA ELECTRICIDAD Y LA ELECTRÓNICA TRABAJO EN GRUPO
LA ELECTRICIDAD Y LA ELECTRÓNICA TRABAJO EN GRUPOv16959670
 
tecno 2024.pdf sara mineiro palacio 10-6
tecno 2024.pdf sara mineiro palacio 10-6tecno 2024.pdf sara mineiro palacio 10-6
tecno 2024.pdf sara mineiro palacio 10-6SaraMineiropalacio
 
TECNOLOGIA 11-4.8888888888888888888888888
TECNOLOGIA 11-4.8888888888888888888888888TECNOLOGIA 11-4.8888888888888888888888888
TECNOLOGIA 11-4.8888888888888888888888888ElianaValencia28
 
Clasificación de Conjuntos de Datos Desequilibrados.pptx
Clasificación de Conjuntos de Datos Desequilibrados.pptxClasificación de Conjuntos de Datos Desequilibrados.pptx
Clasificación de Conjuntos de Datos Desequilibrados.pptxCarolina Bujaico
 
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptxHugoGutierrez99
 
Nomisam: Base de Datos para Gestión de Nómina
Nomisam: Base de Datos para Gestión de NóminaNomisam: Base de Datos para Gestión de Nómina
Nomisam: Base de Datos para Gestión de Nóminacuellosameidy
 
TENDENCIAS DE IA Inteligencia artificial generativa.pdf
TENDENCIAS DE IA Inteligencia artificial generativa.pdfTENDENCIAS DE IA Inteligencia artificial generativa.pdf
TENDENCIAS DE IA Inteligencia artificial generativa.pdfJoseAlejandroPerezBa
 
Trabajo de Tecnología .pdfywhwhejsjsjsjsjsk
Trabajo de Tecnología .pdfywhwhejsjsjsjsjskTrabajo de Tecnología .pdfywhwhejsjsjsjsjsk
Trabajo de Tecnología .pdfywhwhejsjsjsjsjskbydaniela5
 
Análisis de Artefactos Tecnologicos .docx
Análisis de Artefactos Tecnologicos .docxAnálisis de Artefactos Tecnologicos .docx
Análisis de Artefactos Tecnologicos .docxmajovaru19
 
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdfBetianaJuarez1
 
La electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdfLa electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdfcristianrb0324
 
BLOG, EXCEL AVANZADO, MÉTODOS ESTADÍSTICOS..docx
BLOG, EXCEL AVANZADO, MÉTODOS ESTADÍSTICOS..docxBLOG, EXCEL AVANZADO, MÉTODOS ESTADÍSTICOS..docx
BLOG, EXCEL AVANZADO, MÉTODOS ESTADÍSTICOS..docxhellendiaz12
 
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guiaORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guiaYeimys Ch
 
tecnologiaactividad11-240323205859-a9b9b9bc.pdf
tecnologiaactividad11-240323205859-a9b9b9bc.pdftecnologiaactividad11-240323205859-a9b9b9bc.pdf
tecnologiaactividad11-240323205859-a9b9b9bc.pdflauralizcano0319
 
Tecnología Educativa- presentación maestría
Tecnología Educativa- presentación maestríaTecnología Educativa- presentación maestría
Tecnología Educativa- presentación maestríaElizabethLpezSoto
 
Trabajo de tecnología liceo departamental
Trabajo de tecnología liceo departamentalTrabajo de tecnología liceo departamental
Trabajo de tecnología liceo departamentalEmanuelCastro64
 
La electricidad y la electrónica saray 10-2
La electricidad y la electrónica saray 10-2La electricidad y la electrónica saray 10-2
La electricidad y la electrónica saray 10-2SariGarcs
 
Trabajo de tecnología primer periodo 2024
Trabajo de tecnología primer periodo 2024Trabajo de tecnología primer periodo 2024
Trabajo de tecnología primer periodo 2024anasofiarodriguezcru
 
.Informe electricidad y electronica.docx
.Informe electricidad y electronica.docx.Informe electricidad y electronica.docx
.Informe electricidad y electronica.docxCamila Ortiz
 
Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)JuanStevenTrujilloCh
 

Último (20)

LA ELECTRICIDAD Y LA ELECTRÓNICA TRABAJO EN GRUPO
LA ELECTRICIDAD Y LA ELECTRÓNICA TRABAJO EN GRUPOLA ELECTRICIDAD Y LA ELECTRÓNICA TRABAJO EN GRUPO
LA ELECTRICIDAD Y LA ELECTRÓNICA TRABAJO EN GRUPO
 
tecno 2024.pdf sara mineiro palacio 10-6
tecno 2024.pdf sara mineiro palacio 10-6tecno 2024.pdf sara mineiro palacio 10-6
tecno 2024.pdf sara mineiro palacio 10-6
 
TECNOLOGIA 11-4.8888888888888888888888888
TECNOLOGIA 11-4.8888888888888888888888888TECNOLOGIA 11-4.8888888888888888888888888
TECNOLOGIA 11-4.8888888888888888888888888
 
Clasificación de Conjuntos de Datos Desequilibrados.pptx
Clasificación de Conjuntos de Datos Desequilibrados.pptxClasificación de Conjuntos de Datos Desequilibrados.pptx
Clasificación de Conjuntos de Datos Desequilibrados.pptx
 
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
 
Nomisam: Base de Datos para Gestión de Nómina
Nomisam: Base de Datos para Gestión de NóminaNomisam: Base de Datos para Gestión de Nómina
Nomisam: Base de Datos para Gestión de Nómina
 
TENDENCIAS DE IA Inteligencia artificial generativa.pdf
TENDENCIAS DE IA Inteligencia artificial generativa.pdfTENDENCIAS DE IA Inteligencia artificial generativa.pdf
TENDENCIAS DE IA Inteligencia artificial generativa.pdf
 
Trabajo de Tecnología .pdfywhwhejsjsjsjsjsk
Trabajo de Tecnología .pdfywhwhejsjsjsjsjskTrabajo de Tecnología .pdfywhwhejsjsjsjsjsk
Trabajo de Tecnología .pdfywhwhejsjsjsjsjsk
 
Análisis de Artefactos Tecnologicos .docx
Análisis de Artefactos Tecnologicos .docxAnálisis de Artefactos Tecnologicos .docx
Análisis de Artefactos Tecnologicos .docx
 
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
 
La electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdfLa electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdf
 
BLOG, EXCEL AVANZADO, MÉTODOS ESTADÍSTICOS..docx
BLOG, EXCEL AVANZADO, MÉTODOS ESTADÍSTICOS..docxBLOG, EXCEL AVANZADO, MÉTODOS ESTADÍSTICOS..docx
BLOG, EXCEL AVANZADO, MÉTODOS ESTADÍSTICOS..docx
 
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guiaORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
 
tecnologiaactividad11-240323205859-a9b9b9bc.pdf
tecnologiaactividad11-240323205859-a9b9b9bc.pdftecnologiaactividad11-240323205859-a9b9b9bc.pdf
tecnologiaactividad11-240323205859-a9b9b9bc.pdf
 
Tecnología Educativa- presentación maestría
Tecnología Educativa- presentación maestríaTecnología Educativa- presentación maestría
Tecnología Educativa- presentación maestría
 
Trabajo de tecnología liceo departamental
Trabajo de tecnología liceo departamentalTrabajo de tecnología liceo departamental
Trabajo de tecnología liceo departamental
 
La electricidad y la electrónica saray 10-2
La electricidad y la electrónica saray 10-2La electricidad y la electrónica saray 10-2
La electricidad y la electrónica saray 10-2
 
Trabajo de tecnología primer periodo 2024
Trabajo de tecnología primer periodo 2024Trabajo de tecnología primer periodo 2024
Trabajo de tecnología primer periodo 2024
 
.Informe electricidad y electronica.docx
.Informe electricidad y electronica.docx.Informe electricidad y electronica.docx
.Informe electricidad y electronica.docx
 
Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)
 

Log4J

  • 2. Log4j (Logging Framework) Agenda  Introducción a Log4j.  Características.  Diagrama de componentes.  Niveles de trazas.  Appenders.  Layouts.  Filters.  Tipos de configuraciones.
  • 3. Log4j (Logging Framework) Introducción a Log4j Es una biblioteca open source desarrollada en Java por la Apache Software Foundation que permite a los desarrolladores de software elegir la salida y el nivel de granularidad de los mensajes o “logs” (logging) a tiempo de ejecución y no a tiempo de compilación como es comúnmente realizado. La configuración de salida y granularidad de los mensajes es realizada a tiempo de ejecución mediante el uso de archivos de configuración externos. Log4J ha sido implementado en otros lenguajes como: C, C++, C#, Perl, Python, Ruby y Eiffel.
  • 4. Log4j (Logging Framework) Características  Diferentes niveles de traza. (Error, información, depurar).  Filtros según categoría.  Redirección de las trazas a diferentes destinos. (A un archivo, a consola, a Base de datos, etc).  Diferentes formatos de visualización. (Visualizar fecha, línea, nombre de la clase, etc).  Configuración por ficheros.
  • 6. Log4j (Logging Framework) Niveles Por defecto Log4J tiene 6 niveles de prioridad para los mensajes. Además existen otros dos niveles extras Niveles de prioridad (De mayor -poco detalle- a menor -mucho detalle-):  FATAL: Se utiliza para mensajes críticos del sistema, generalmente después de guardar el mensaje el programa abortará.  ERROR: Se utiliza en mensajes de error de la aplicación que se desea guardar, estos eventos afectan al programa pero lo dejan seguir funcionando, como por ejemplo que algún parámetro de configuración no es correcto y se carga el parámetro por defecto.  WARN: Se utiliza para mensajes de alerta sobre eventos que se desea mantener constancia, pero que no afectan al correcto funcionamiento del programa.  INFO: Se utiliza para mensajes similares al modo "verbose" en otras aplicaciones.  DEBUG: Se utiliza para escribir mensajes de depuración. Este nivel no debe estar activado cuando la aplicación se encuentre en producción.  TRACE: Se utiliza para mostrar mensajes con un mayor nivel de detalle que debug. Extras:  ALL: Este es el nivel de máximo detalle, habilita todos los logs (en general equivale a TRACE).  OFF: Este es el nivel de mínimo detalle, deshabilita todos los logs.
  • 7. Log4j (Logging Framework) Herencia de Niveles Logger name Assigned level Inherited level root Proot Proot X Px Px X.Y none Px X.Y.Z Pxyz Pxyz Ejemplo 3 Logger name Assigned level Inherited level root Proot Proot X none Proot X.Y none Proot X.Y.Z none Proot Ejemplo 1 Logger name Assigned level Inherited level root Proot Proot X Px Px X.Y Pxy Pxy X.Y.Z Pxyz Pxyz Ejemplo 2 Logger name Assigned level Inherited level root Proot Proot X Px Px X.Y none Px X.Y.Z none Px Ejemplo 4
  • 8. Log4j (Logging Framework) Appenders En Log4J los mensajes son enviados a una (o varias) salida de destino, lo que se denomina un appender. Existen varios appenders disponibles y configurados, aunque también podemos crear y configurar nuestros propios appenders. Tipos de appenders: - Console - File - Rolling file - GUI - TCP/IP - NT Event log - Unix Syslog daemon - JDBC - SMTP - JMS Casi nunca es utilizado en un entorno de producción la salida a la consola (ConsoleAppender) ya que perdería gran parte de la utilidad de Log4J.
  • 9. Log4j (Logging Framework) Logger Name Added Appenders Additivity Flag Output Targets Comment Root A1 not applicable A1 x A-x1, A-x2 true A1, A-x1, A-x2 Appenders de "x" y root. x.y none true A1, A-x1, A-x2 Appenders de "x" y root. x.y.z A-xyz1 true A1, A-x1, A-x2, A-xyz1 Appenders en "x.y.z", "x" and root. security A-sec false A-sec Los appenders no se acumulan porque el flag es false. security.access none true A-sec Solo appenders de "security" porque el flag additivity esta en false en "security“.
  • 10. Log4j (Logging Framework) Layouts Es el responsable de dar un formato de presentación a los mensajes. Permite presentar el mensaje con el formato necesario para almacenarlo simplemente en un archivo de texto .log (SimpleLayout y PatternLayout), en una tabla HTML (HTMLLayout), o en un archivo XML (XMLLayout). Además podemos añadir información extra al mensaje, como la fecha en que se generó, la clase que lo generó, el nivel que posee, etc.
  • 11. Log4j (Logging Framework) Simbolos %c Logger, %c{2 } last 2 partial names %C Class name (full agony), %C{2 } last 2 partial names %d{dd MMM yyyy HH:MM:ss } Date, format see java.text.SimpleDateFormat %F File name %l Location (caution: compiler-option-dependently) %L Line number %m user-defined message %M Method name %p Level %r Milliseconds since program start %t Threadname %x, %X see Doku %% individual percentage sign Cuidado con estos: %C, %F, %l, %L, %M Estos simbolos son pesados y causan que la aplicación valla mas lento.
  • 12. Log4j (Logging Framework) Filters Cada appender puede tener varios filtros o ninguno, los cuales se encargan de ejecutar distintas validaciones(o filtros) sobre los mensajes logueados. Además podemos añadir nuestros propios filtros de forma programática. Algunos filtros implementados: - StringMatchFilter - LevelRangeFilter - LevelMatchFilter
  • 14. Log4j (Logging Framework) Tipos de configuraciones  Mediante un archivo de propiedades.  Mediante un archivo XML