Junior — Middle
Uygulama veya sistemde genellikle log kaydı yaparken neredes olursunuz?
sobes.tech yapay zeka
AI'dan gelen yanıt
Go dilinde günlük kaydı genellikle standart log paketi veya zap, logrus veya zerolog gibi daha gelişmiş kütüphaneler kullanılarak yapılır.
Günlükler genellikle şu şekilde yazılır:
- Konsola (stdout/stderr) — yerel geliştirme ve konteynerleştirilmiş uygulamalar için uygundur.
- Dosyalara — uzun vadeli depolama ve analiz için.
- Uzaktaki günlükleme sistemlerine (örneğin, syslog, Fluentd, ELK yığını aracılığıyla).
Standart paket kullanarak bir dosyaya günlük kaydı örneği:
package main
import (
"log"
"os"
)
func main() {
dosya, hata := os.OpenFile("app.log", os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0666)
if hata != nil {
log.Fatal(hata)
}
defer dosya.Close()
log.SetOutput(dosya)
log.Println("Uygulama başlatıldı")
}
Gerçek uygulamalarda, genellikle günlük seviyelerini, formatını ve çıkışını yapılandırmaya olanak tanıyan daha esnek kütüphaneler kullanılır.