Repolode
sirupsen

sirupsen/logrus

Logger estructurado y compatible a nivel de API con Go, con formatters y hooks extensibles, actualmente en modo de mantenimiento.

Estrellas
25,764
Forks
2,297
Issues abiertos
59
Último commit
hace 22 días

¿Qué es?

Logrus es un logger estructurado para Go compatible a nivel de API con el paquete log de la biblioteca estándar, por lo que se pueden reemplazar las importaciones de log existentes con pocos cambios. Escribe entradas con campos clave-valor y un nivel, y puede generar texto en color para terminales, texto al estilo logfmt o JSON para sistemas de agregación de logs como Logstash y Splunk.

El logger admite siete niveles, de Trace a Panic, destinos de salida por logger mediante cualquier io.Writer y contextos reutilizables con campos creados con WithFields. Los hooks permiten reenviar entradas a otros destinos, como sistemas de seguimiento de errores o syslog, y se pueden añadir formatters personalizados implementando un método Format. También incluye informes de llamadas, un hook de prueba para verificar los mensajes registrados y manejadores para la salida ante errores fatales.

El proyecto está en modo de mantenimiento: los responsables se centran en correcciones de seguridad, errores y rendimiento, y limitan las nuevas funciones a la interoperabilidad, por ejemplo, con Go's log/slog. El README señala Zerolog, Zap y Apex como alternativas diseñadas según prácticas más recientes de logging estructurado en Go.

Funciones clave

  • 01Compatible directamente con la API log de la biblioteca estándar.
  • 02Campos estructurados clave-valor con siete niveles, de Trace a Panic.
  • 03Salida en color para terminales y formatters de texto al estilo logfmt y JSON.
  • 04Hooks para reenviar entradas a servicios como syslog o sistemas de seguimiento de errores.
  • 05Formatters personalizados mediante una interfaz Format sencilla.
  • 06Hook de prueba para verificar los mensajes registrados en pruebas unitarias.

Casos de uso

  • Añadir logs JSON estructurados a un servicio Go para que Logstash o Splunk los procesen.
  • Migrar un proyecto existente desde el paquete log estándar sin reescribir los puntos de llamada.
  • Enviar entradas de nivel de error a un sistema externo de seguimiento de excepciones mediante un hook.
  • Verificar en pruebas unitarias que se hayan emitido mensajes de log específicos.

Inicio rápido

  1. 1

    Instala el módulo Logrus

    go get github.com/sirupsen/logrus
  2. 2

    Impórtalo en tu código Go y registra un mensaje con campos

Antes de usarlo

  • Logrus está en modo de mantenimiento, por lo que no hay planes de añadir nuevas funciones.
  • Su README menciona alternativas como Zerolog, Zap y Apex.

En colecciones

Temas

Preguntas frecuentes

¿Qué es logrus?
Logger estructurado y compatible a nivel de API con Go, con formatters y hooks extensibles, actualmente en modo de mantenimiento. Logrus es un logger estructurado para Go compatible a nivel de API con el paquete log de la biblioteca estándar, por lo que se pueden reemplazar las importaciones de log existentes con pocos cambios. Escribe entradas con campos clave-valor y un nivel, y puede generar texto en color para terminales, texto al estilo logfmt o JSON para sistemas de agregación de logs como Logstash y Splunk.
¿logrus es gratuito? ¿Qué licencia tiene?
logrus es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿logrus sigue mantenido?
Mantenimiento activo. El último commit de logrus fue el 2 oct 2026.
¿Para qué puedo usar logrus?
Añadir logs JSON estructurados a un servicio Go para que Logstash o Splunk los procesen. Migrar un proyecto existente desde el paquete log estándar sin reescribir los puntos de llamada. Enviar entradas de nivel de error a un sistema externo de seguimiento de excepciones mediante un hook. Verificar en pruebas unitarias que se hayan emitido mensajes de log específicos.
¿Cómo se instala logrus?
Instala el módulo Logrus: go get github.com/sirupsen/logrus Impórtalo en tu código Go y registra un mensaje con campos
¿Dónde consigo logrus?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/sirupsen/logrus

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados