لاگگذاری
Gin شامل یک میانافزار لاگر داخلی است که جزئیات هر درخواست HTTP از جمله کد وضعیت، متد HTTP، مسیر و تأخیر را ثبت میکند.
وقتی یک روتر با gin.Default() ایجاد میکنید، میانافزار لاگر به همراه میانافزار بازیابی به طور خودکار متصل میشود:
// Logger and Recovery middleware are already attachedrouter := gin.Default()اگر نیاز به کنترل کامل بر اینکه کدام میانافزار استفاده شود دارید، یک روتر با gin.New() ایجاد کنید و لاگر را به صورت دستی اضافه کنید:
// No middleware attachedrouter := gin.New()
// Attach the logger middlewarerouter.Use(gin.Logger())لاگر پیشفرض به os.Stdout مینویسد و خروجی مانند زیر برای هر درخواست تولید میکند:
[GIN] 2025/06/01 - 15:04:05 | 200 | 512.345µs | 127.0.0.1 | GET "/ping"هر ورودی شامل مهر زمان، کد وضعیت HTTP، تأخیر درخواست، IP کلاینت، متد HTTP و مسیر درخواست شده است.
در این بخش
- نوشتن لاگ در فایل — هدایت خروجی لاگ به فایل، کنسول یا هر دو به طور همزمان.
- فرمت لاگ سفارشی — تعریف فرمت لاگ خود با
LoggerWithFormatter. - رد شدن از لاگگذاری — رد شدن از لاگگذاری برای مسیرها یا شرایط خاص.
- کنترل رنگآمیزی خروجی لاگ — فعال یا غیرفعال کردن خروجی لاگ رنگی.
- جلوگیری از لاگگذاری رشتههای پرسوجو — حذف پارامترهای پرسوجو از خروجی لاگ برای امنیت و حریم خصوصی.
- تعریف فرمت لاگ مسیرها — سفارشیسازی نحوه چاپ مسیرهای ثبت شده هنگام راهاندازی.