Junior — Middle
Kde obvykle zaznamenáváš logy v aplikaci nebo systému?
sobes.tech AI
Odpověď od AI
V Go je obvykle zaznamenávání logů prováděno pomocí standardního balíčku log nebo pokročilejších knihoven, jako jsou zap, logrus nebo zerolog.
Logy se obvykle zapisují:
- Do konzole (stdout/stderr) — vhodné pro místní vývoj a kontejnerizované aplikace.
- Do souborů — pro dlouhodobé ukládání a analýzu.
- Do vzdálených systémů logování (například přes syslog, Fluentd, ELK stack).
Příklad zápisu logu do souboru pomocí standardního balíčku:
package main
import (
"log"
"os"
)
func main() {
soubor, chyba := os.OpenFile("app.log", os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0666)
if chyba != nil {
log.Fatal(chyba)
}
defer soubor.Close()
log.SetOutput(soubor)
log.Println("Aplikace byla spuštěna")
}
V reálných aplikacích se často používají flexibilnější knihovny, které umožňují konfigurovat úrovně logování, formát a výstup.