Sobes.tech
Junior — Middle

Gde obično vršiš zapisivanje logova u aplikaciji ili sistemu?

sobes.tech АИ

Одговор од АИ

У Go-у, обично се региструју логови коришћењем стандардног пакета log или напреднијих библиотека као што су zap, logrus или zerolog.

Логови се обично пишу:

  • У конзолу (stdout/stderr) — погодно за локални развој и апликације у контејнерима.
  • У датотеке — за дугорочно чување и анализу.
  • У удаљене системе за логовање (нпр. преко syslog, Fluentd, ELK stack).

Пример записа логова у датотеку помоћу стандардног пакета:

package main

import (
    "log"
    "os"
)

func main() {
    датотека, грешка := os.OpenFile("app.log", os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0666)
    if грешка != nil {
        log.Fatal(грешка)
    }
    defer датотека.Close()

    log.SetOutput(датотека)
    log.Println("Апликација је покренута")
}

У стварним апликацијама често се користе флексибилније библиотеке које омогућавају конфигурацију нивоа логовања, формата и излаза.