Sobes.tech
Junior — Middle

Əsasən tətbiq və ya sistemdə logların qeydiyyatını harada həyata keçirirsiniz?

sobes.tech Süni İntellekt

AI-dan cavab

Go-da log qeydiyyatı adətən standart log paketi və ya zap, logrus və ya zerolog kimi daha inkişaf etmiş kitabxanalar istifadə edilərək həyata keçirilir.

Loglar adətən aşağıdakı yerlərə yazılır:

  • Konsola (stdout/stderr) — yerli inkişaf və konteynerləşdirilmiş tətbiqlər üçün əlverişlidir.
  • Fayllara — uzunmüddətli saxlama və analiz üçün.
  • Uzaq loglama sistemlərinə (məsələn, syslog, Fluentd, ELK stack vasitəsilə).

Standart paket istifadə edərək fayla log yazma nümunəsi:

package main

import (
    "log"
    "os"
)

func main() {
    fayl, xato := os.OpenFile("app.log", os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0666)
    if xato != nil {
        log.Fatal(xato)
    }
    defer fayl.Close()

    log.SetOutput(fayl)
    log.Println("Tətbiq başladı")
}

Həqiqi tətbiqlərdə, daha çevik kitabxanalar istifadə olunur ki, bu da log səviyyələrini, formatını və çıxışını konfiqurasiya etməyə imkan verir.