Sobes.tech
Junior — Middle

Kus tavaliselt logisid rakenduses või süsteemis teed?

sobes.tech AI

Vastus AI-lt

Go-s on tavaliselt logisid registreeritud kasutades standardpaketti log või arenenumaid raamatukogusid nagu zap, logrus või zerolog.

Logisid kirjutatakse tavaliselt:

  • Konsoolile (stdout/stderr) — mugav kohaliku arenduse ja konteineriseeritud rakenduste jaoks.
  • Failidesse — pikaajalise salvestamise ja analüüsi jaoks.
  • Kauglike logimissüsteemidesse (näiteks syslog, Fluentd, ELK stack).

Näide logi kirjutamisest faili kasutades standardpaketti:

package main

import (
    "log"
    "os"
)

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

    log.SetOutput(fail)
    log.Println("Rakendus on käivitunud")
}

Reaalses rakenduses kasutatakse sageli paindlikumaid raamatukogusid, mis võimaldavad konfigureerida logitasemeid, formaati ja väljundit.