Logrus Prefixed Log Formatter là một bộ định dạng hóa nhật ký dựa trên Logrus, cải tiến từ TextFormatter gốc của Logrus. Nó hỗ trợ việc thêm tiền tố (như nguồn thông điệp) và cho phép tùy chỉnh chủ đề màu sắc. Khi đầu ra không phải là TTY, nó tương thích với định dạng logfmt.
Địa chỉ dự án: https://github.com/x-cray/logrus-prefixed-formatter
Cài đặt Nhanh
Cài đặt
Sử dụng lệnh go get để cài đặt Logrus Prefixed Log Formatter:
go get github.com/x-cray/logrus-prefixed-formatter
Ví dụ Sử dụng
Dưới đây là một ví dụ đơn giản về cách sử dụng:
package main
import (
"github.com/sirupsen/logrus"
formatter "github.com/x-cray/logrus-prefixed-formatter"
)
var logger = logrus.New()
func init() {
logger.Formatter = new(formatter.TextFormatter)
logger.Level = logrus.DebugLevel
}
func main() {
logger.WithFields(logrus.Fields{
"prefix": "main",
"dongvat": "delfin",
"so": 5,
}).Debug("Bắt đầu quan sát bãi biển")
logger.WithFields(logrus.Fields{
"prefix": "cảm biến",
"nhietdo": 3,
}).Info("Thay đổi nhiệt độ")
}
Các Ví Dụ Ứng Dụng và Lời Khuyên
Các Ví Dụ Ứng Dụng
Trong kiến trúc microservices, việc định dạng thống nhất và gắn nhãn tiền tố cho nhật ký là rất quan trọng đối với việc theo dõi và phân tích nhật ký. Logrus Prefixed Log Formatter giúp nhà phát triển thêm tên dịch vụ, tên module vào nhật ký, dễ dàng xác định vấn đề trong hệ thống phân tán.
Lời Khuyên
- Tùy chỉnh chủ đề màu sắc: Đặt các chủ đề màu sắc khác nhau cho các cấp độ nhật ký, làm cho đầu ra nhật ký rõ ràng hơn.
- Tiền tố nhật ký: Thêm tên dịch vụ, tên module vào nhật ký để dễ dàng phân loại và tìm kiếm.
- Định dạng nhật ký: Điều chỉnh cách định dạng nhật ký dựa trên môi trường (ví dụ: phát triển, thử nghiệm, sản xuất) để đảm bảo tính đọc được và tương thích của nhật ký.
Các Dự Án Liên Quan
Logrus
Logrus là thư viện ghi nhật ký có cấu trúc, được sử dụng rộng rãi trong các dự án Go. Logrus Prefixed Log Formatter là một mở rộng của Logrus, cung cấp khả năng định dạng nhật ký linh hoạt hơn.
Logrus Hooks
Logrus hỗ trợ mở rộng chức năng ghi nhật ký thông qua Hooks, như gửi nhật ký đến máy chủ xa, ghi vào cơ sở dữ liệu, v.v. Kết hợp với Logrus Prefixed Log Formatter, có thể thực hiện các luồng xử lý nhật ký phức tạp hơn.
Logrus JSON Formatter
Logrus cũng cung cấp định dạng đầu ra JSON, phù hợp cho các tình huống cần nhật ký có cấu trúc. Kết hợp với Logrus Prefixed Log Formatter, có thể thêm thông tin tiền tố vào nhật ký JSON, dễ dàng phân tích và giải mã.