GoDasturchi
Introduction to Structured Logging

Introduction to Structured Logging

Strukturaviy loglashga kirish

fmt.Println("foydalanuvchi kirdi:", userID) — loglashning eng sodda yo'li, lekin katta loyihada muammoli: matnni kompyuterga "tushuntirish" qiyin. "Strukturaviy loglash" esa har bir log yozuvini kalit-qiymat juftliklari ko'rinishida saqlaydi — inson ham, dastur ham osongina o'qiy oladigan formatda.

misol.txt
// Oddiy (structuresiz) log:
foydalanuvchi 42 tizimga kirdi IP manzil 192.168.1.5 dan

// Strukturaviy log:
level=INFO msg="foydalanuvchi kirdi" user_id=42 ip=192.168.1.5

Farqni tasavvur qiling: minglab log yozuvi orasidan "faqat user_id=42 bo'lgan yozuvlarni top" degan qidiruvni qilish kerak. Oddiy matnda buni aniq qidirish qiyin (matn shakli har xil bo'lishi mumkin), strukturaviy logda esa user_id — aniq maydon, uni filtrlash, saralash, hisoblash oson.

Go'ning standart kutubxonasidagi log/slog paketi ("structured log") aynan shu uchun — u har bir log yozuviga xabar (message), daraja (level: Debug/Info/Warn/Error) va istalgan sondagi kalit-qiymat juftliklarini (attributes) qo'shish imkonini beradi.

Key Takeaway

Key Takeaway:

Strukturaviy loglash — log ma'lumotini erkin matn emas, aniq kalit-qiymat juftliklari ko'rinishida saqlaydi, bu qidirish, filtrlash va tahlil qilishni ancha osonlashtiradi.

NEXT UP

Your First slog Logger

Introduction to Structured Logging

Strukturaviy loglashga kirish

fmt.Println("foydalanuvchi kirdi:", userID) — loglashning eng sodda yo'li, lekin katta loyihada muammoli: matnni kompyuterga "tushuntirish" qiyin. "Strukturaviy loglash" esa har bir log yozuvini kalit-qiymat juftliklari ko'rinishida saqlaydi — inson ham, dastur ham osongina o'qiy oladigan formatda.

misol.txt
// Oddiy (structuresiz) log:
foydalanuvchi 42 tizimga kirdi IP manzil 192.168.1.5 dan

// Strukturaviy log:
level=INFO msg="foydalanuvchi kirdi" user_id=42 ip=192.168.1.5

Farqni tasavvur qiling: minglab log yozuvi orasidan "faqat user_id=42 bo'lgan yozuvlarni top" degan qidiruvni qilish kerak. Oddiy matnda buni aniq qidirish qiyin (matn shakli har xil bo'lishi mumkin), strukturaviy logda esa user_id — aniq maydon, uni filtrlash, saralash, hisoblash oson.

Go'ning standart kutubxonasidagi log/slog paketi ("structured log") aynan shu uchun — u har bir log yozuviga xabar (message), daraja (level: Debug/Info/Warn/Error) va istalgan sondagi kalit-qiymat juftliklarini (attributes) qo'shish imkonini beradi.

Key Takeaway

Key Takeaway:

Strukturaviy loglash — log ma'lumotini erkin matn emas, aniq kalit-qiymat juftliklari ko'rinishida saqlaydi, bu qidirish, filtrlash va tahlil qilishni ancha osonlashtiradi.

NEXT UP

Your First slog Logger