Biblioteca de logging para Python que sustituye la configuración estándar por un único logger, rotación de archivos, salida en color y logs estructurados.
armink/EasyLogger
Una biblioteca de logging para C/C++ ultraligera, pensada para dispositivos embebidos con recursos limitados y con filtros, salida en color y destinos configurables.
- Estrellas
- 4,799
- Forks
- 1,323
- Issues abiertos
- 82
- Último commit
- hace 20 horas
¿Qué es?
EasyLogger es una biblioteca de logging para C/C++ diseñada para proyectos sensibles al consumo de recursos, como productos IoT, wearables y dispositivos para el hogar inteligente. Está pensada para ocupar muy poco espacio en código y RAM, y mantiene una interfaz deliberadamente sencilla para que sea rápida de adoptar frente a bibliotecas más pesadas, como log4c o zlog.
El destino de los mensajes se configura según las necesidades del usuario, por lo que pueden enviarse a una terminal, un archivo, una base de datos, un puerto serie, RS-485 o memoria flash. Cada entrada puede incluir el nivel, la marca de tiempo y datos del hilo y del proceso; además, es posible filtrar por etiqueta, nivel o palabra clave, tanto en tiempo de compilación como de ejecución. Los niveles se muestran en distintos colores y se admiten los formatos RAW y hexdump. La biblioteca funciona en RT-Thread, uC/OS, Linux, Windows, NuttX y plataformas bare-metal, y ofrece modos de salida seguros para hilos, asíncronos y con búfer.
Hay plugins que añaden funciones como el almacenamiento de logs en flash (mediante EasyFlash) y la rotación de archivos.
Funciones clave
- 01Huella ultrapequeña: menos de 1.6K de ROM y 0.3K de RAM.
- 02Destinos de salida configurables, como terminal, archivo, memoria flash, puerto serie o base de datos.
- 03Filtrado estático y dinámico por etiqueta, nivel y palabra clave.
- 04Modos de salida seguros para hilos, asíncronos y con búfer.
- 05Salida en color según el nivel, además de los formatos RAW y hexdump.
- 06Plugins para almacenar logs en flash y rotar archivos.
Casos de uso
- Registrar logs en firmware de IoT o wearables con recursos limitados.
- Depurar dispositivos embebidos en RT-Thread o en plataformas bare-metal.
- Almacenar logs de dispositivos en memoria flash en sistemas sin sistema de archivos.
- Añadir filtrado de logs por etiqueta a un proyecto C de gran tamaño.
Inicio rápido
- 1
Lee la documentación en chino de docs/zh antes de portar la biblioteca
- 2
Porta la biblioteca a tu proyecto siguiendo docs/zh/port/kernel.md
Antes de usarlo
- No se puede instalar mediante un gestor de paquetes; debes portar el código fuente a tu proyecto.
- La configuración es un singleton global, por lo que no se admiten configuraciones complejas para cada salida.
- La documentación principal y el README están en chino.
En colecciones
Temas
Preguntas frecuentes
- ¿Qué es EasyLogger?
- Una biblioteca de logging para C/C++ ultraligera, pensada para dispositivos embebidos con recursos limitados y con filtros, salida en color y destinos configurables. EasyLogger es una biblioteca de logging para C/C++ diseñada para proyectos sensibles al consumo de recursos, como productos IoT, wearables y dispositivos para el hogar inteligente. Está pensada para ocupar muy poco espacio en código y RAM, y mantiene una interfaz deliberadamente sencilla para que sea rápida de adoptar frente a bibliotecas más pesadas, como log4c o zlog.
- ¿EasyLogger es gratuito? ¿Qué licencia tiene?
- EasyLogger es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿EasyLogger sigue mantenido?
- Mantenimiento activo. El último commit de EasyLogger fue el 5 nov 2026.
- ¿Para qué puedo usar EasyLogger?
- Registrar logs en firmware de IoT o wearables con recursos limitados. Depurar dispositivos embebidos en RT-Thread o en plataformas bare-metal. Almacenar logs de dispositivos en memoria flash en sistemas sin sistema de archivos. Añadir filtrado de logs por etiqueta a un proyecto C de gran tamaño.
- ¿Cómo se instala EasyLogger?
- Lee la documentación en chino de docs/zh antes de portar la biblioteca Porta la biblioteca a tu proyecto siguiendo docs/zh/port/kernel.md
- ¿Dónde consigo EasyLogger?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/armink/EasyLogger
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Un sistema operativo en tiempo real (RTOS) escalable para microcontroladores con recursos limitados y dispositivos IoT de diversas arquitecturas de CPU.
Herramienta de línea de comandos y sistema de compilación multiplataforma para desarrollo embebido, con gestión de bibliotecas, compatibilidad con varias placas y frameworks, depuración y pruebas unitarias.
Logger universal para TypeScript y JavaScript, con salida legible en terminal, JSON estructurado con los campos al principio, enmascaramiento de secretos y cero dependencias en tiempo de ejecución.
Stack USB Host y Device de código abierto y multiplataforma para sistemas embebidos, diseñado para ofrecer seguridad de memoria e hilos en más de 50 familias de MCU.
Una biblioteca de logging sin dependencias para JavaScript y TypeScript, compatible con Deno, Node.js, Bun, navegadores y funciones edge.