Skip to content

hcslearning/java-logging-slf4j-logback

Repository files navigation

README

Introducción

Quickstart al uso de SLF4J con Logback.

  • SLF4J: Simple Logging Facade for Java es una interfaz de logging que actúa como una capa de abstracción entre el código de una aplicación Java y las distintas bibliotecas de logging disponibles (como Logback, Log4j, java.util.logging, etc). Su propósito es permitir que el desarrollador escriba código desacoplado de la implementación específica de logging, facilitando así cambiarla sin modificar el código fuente.

  • Logback: Logback es una biblioteca de logging para aplicaciones Java, diseñada como sucesora de Log4j 1 por el mismo autor, Ceki Gülcü, y es la implementación recomendada para usar con SLF4J. Ofrece un alto rendimiento, configuración flexible mediante archivos XML, soporte para rotación de archivos, filtros por nivel de log y manejo de contextos (MDC).

Destacado

  • Archivo de configuración logback.xml

  • Puede existir un archivo logback-test.xml para testing

Dependencias

Ejemplo archivo libs.versions.toml
[versions]
logback = "1.5.18"
slf4j = "2.0.17"

[libraries]
logback-core = { module = "ch.qos.logback:logback-core", version.ref = "logback" }
logback-classic = { module = "ch.qos.logback:logback-classic", version.ref = "logback" }
slf4j-api = { module = "org.slf4j:slf4j-api", version.ref = "slf4j" }
Ejemplo archivo build.gradle
dependencies {
    implementation(libs.logback.core)
    implementation(libs.logback.classic)
    implementation(libs.slf4j.api)
}

Uso en Java

Ejemplo de uso en clase Java
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class Interna {
    private static final Logger logger = LoggerFactory.getLogger(Interna.class);

    public void hacerAlgo() {
        logger.trace("message type:  trace");
        logger.debug("message type:  debug");
        logger.info("message type:  info");
        logger.warn("message type:  warn");
        logger.error("message type:  error");
    }
}

Configuración de Ejemplo

Ejemplo de archivo logback.xml
<configuration>
    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>%level [%thread] %logger{10} %kvp %msg%n</pattern>
        </encoder>
    </appender>

    <appender name="FILE" class="ch.qos.logback.core.FileAppender">
        <file>aprendiendo-logging.log</file>
        <encoder>
            <pattern>%date %level [%thread] %logger{10} [%file:%line] -%kvp- %msg%n</pattern>
        </encoder>
    </appender>

    <root level="TRACE">
        <appender-ref ref="STDOUT" />
        <appender-ref ref="FILE" />
    </root>

    <logger name="cl.hcslearning.logging.inner" level="WARN">
        <appender-ref ref="STDOUT" />
        <appender-ref ref="FILE" />
    </logger>

</configuration>

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages