Biblioteca header-only de C++11 para exponer tipos y funciones de C++ a Python, principalmente para crear bindings de Python para código C++ existente.
gabime/spdlog
Biblioteca de logging rápida para C++ con salida formateada, modo asíncrono y varios destinos, como archivos rotativos, consola y syslog.
- Estrellas
- 29,703
- Forks
- 5,341
- Issues abiertos
- 58
- Último commit
- hace 18 horas
¿Qué es?
spdlog es una biblioteca de logging para C++ que permite a las aplicaciones escribir mensajes de log con formato en distintos destinos. Se puede usar como biblioteca header-only o compilar con CMake, y utiliza la biblioteca fmt para dar formato a los mensajes.
Los loggers pueden escribir en archivos rotativos o diarios, en la consola con colores, en syslog, en el registro de eventos de Windows, en el depurador de Windows y en widgets de Qt. Los niveles de log se pueden cambiar en tiempo de ejecución o en tiempo de compilación, y se pueden cargar desde argumentos de línea de comandos o variables de entorno. El modo asíncrono opcional delega el trabajo de salida en un pool de hilos en segundo plano, y un búfer de backtrace conserva los mensajes de depuración recientes para poder volcarlos cuando se produce un error.
La biblioteca es compatible con Linux, variantes de BSD, Solaris, AIX, Windows, macOS y Android, y está disponible en muchos gestores de paquetes habituales.
Funciones clave
- 01Uso header-only o compilado con CMake
- 02Mensajes con formato mediante fmt, incluidos patrones personalizados y tipos definidos por el usuario
- 03Destinos de salida para archivos rotativos o diarios, consola, syslog y el registro de eventos de Windows
- 04Logging asíncrono con un pool de hilos en segundo plano
- 05Control de los niveles de log en tiempo de ejecución y de compilación, con carga desde variables de entorno o argv
- 06Búfer de backtrace para volcar bajo demanda mensajes de depuración recientes
Casos de uso
- Añadir logging estructurado y con niveles a un servidor o una aplicación de escritorio en C++
- Escribir logs en archivos rotativos en servicios de larga duración
- Enviar grandes volúmenes de logs mediante un logger asíncrono para reducir el impacto en los hilos que atienden solicitudes
- Dirigir logs a syslog o al registro de eventos de Windows en servicios del sistema
Inicio rápido
- 1
Clona el repositorio
git clone https://github.com/gabime/spdlog.git - 2
Entra en el directorio y crea una carpeta de compilación
cd spdlog && mkdir build && cd build - 3
Configura y compila con CMake
cmake .. && cmake --build .
Antes de usarlo
- La licencia no está claramente identificada en los metadatos, así que comprueba el archivo de licencia del repositorio antes de usarlo.
En colecciones
Temas
Preguntas frecuentes
- ¿Qué es spdlog?
- Biblioteca de logging rápida para C++ con salida formateada, modo asíncrono y varios destinos, como archivos rotativos, consola y syslog. spdlog es una biblioteca de logging para C++ que permite a las aplicaciones escribir mensajes de log con formato en distintos destinos. Se puede usar como biblioteca header-only o compilar con CMake, y utiliza la biblioteca fmt para dar formato a los mensajes.
- ¿spdlog es gratuito? ¿Qué licencia tiene?
- spdlog es open source bajo la licencia Other. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿spdlog sigue mantenido?
- Mantenimiento activo. El último commit de spdlog fue el 24 oct 2026.
- ¿Para qué puedo usar spdlog?
- Añadir logging estructurado y con niveles a un servidor o una aplicación de escritorio en C++ Escribir logs en archivos rotativos en servicios de larga duración Enviar grandes volúmenes de logs mediante un logger asíncrono para reducir el impacto en los hilos que atienden solicitudes Dirigir logs a syslog o al registro de eventos de Windows en servicios del sistema
- ¿Cómo se instala spdlog?
- Clona el repositorio: git clone https://github.com/gabime/spdlog.git Entra en el directorio y crea una carpeta de compilación: cd spdlog && mkdir build && cd build Configura y compila con CMake: cmake .. && cmake --build .
- ¿Dónde consigo spdlog?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/gabime/spdlog
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Biblioteca de C++11 en un solo archivo de cabecera para crear servidores y clientes HTTP/HTTPS con E/S de sockets bloqueante.
Biblioteca C++ de solo cabeceras para analizar rápidamente y con exactitud valores float, double y enteros a partir de cadenas; implementación de from_chars compatible como reemplazo directo.
Biblioteca asíncrona de logging y métricas en C++17 con latencia ultrabaja que delega el formateo y la E/S a un hilo en segundo plano.
Una biblioteca header-only para C++11 que permite analizar, crear, manipular y serializar JSON con una sintaxis similar a la de STL.
Un gestor de paquetes C/C++ gratuito y de código abierto de Microsoft para instalar y compilar bibliotecas en Windows, macOS y Linux.