Junior — Middle
Къде обикновено извършваш записването на логове в приложението или системата?
sobes.tech AI
Отговор от AI
В 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("Приложението стартира")
}
В реални приложения често се използват по-гъвкави библиотеки, които позволяват настройка на нивата на логване, формата и изхода.