
spdlog là một thư viện logging viết bằng C++ nổi tiếng với tốc độ cao và kích thước nhẹ, hiện đang nằm trong danh sách Trending của GitHub với hơn 29.000 sao và 10 sao mới hôm nay. Thư viện cho phép tạo logger chỉ bằng vài dòng code, ví dụ spdlog::info("Welcome to spdlog!");, và hỗ trợ đầy đủ các mức log từ trace tới critical.
Về tính năng, spdlog cung cấp cấu hình mức log toàn cục (spdlog::set_level(spdlog::level::debug)), định dạng mẫu log tùy chỉnh (spdlog::set_pattern(...)), và các mức log biên dịch giúp loại bỏ hoàn toàn các lời gọi log trong bản release. Ngoài ra, thư viện hỗ trợ backtrace lưu trữ tạm thời các tin nhắn debug trong một vòng đệm, flush định kỳ mỗi vài giây, và stopwatch để đo thời gian thực thi.
spdlog còn tích hợp nhiều sink đa dạng:
- Console color sink (
spdlog::stdout_color_mt) cho log màu sắc trên terminal. - Basic file sink (
spdlog::basic_logger_mt) ghi vào file đơn. - Rotating file sink cho phép tự động quay vòng file khi đạt kích thước giới hạn.
- Daily file sink tạo file mới hàng ngày vào thời gian định trước.
Việc sử dụng các sink này chỉ cần vài dòng code và có thể kết hợp trong cùng một ứng dụng.
Với cộng đồng AI và phát triển phần mềm tại Việt Nam, spdlog là công cụ hữu ích giúp giảm chi phí thời gian debug và tối ưu hiệu năng của các mô hình và dịch vụ AI chạy trên C++. Nhờ tính đơn giản và hiệu suất cao, spdlog sẽ tiếp tục được áp dụng rộng rãi trong các dự án mã nguồn mở và thương mại trong nước.
Nguồn: GitHub Trending — Biên dịch & tổng hợp: danhbaai.com