Skip to content

log

Go dili standart kütüphanesi log paketi basit log işlemlerini implement eder.

go
func main() {
   log.Println("Log")
   log.Panicln("panic log")
   log.Fatalln("hata log")
}

Fatal, log mesajını yazdırdıktan sonra os.exit(1) çağırır, panic ise panic fırlatır

Önek

go
func (l *Logger) Prefix() string //Önek al

func (l *Logger) SetPrefix(prefix string) //Önek ayarla

Örnek

go
func main() {
  log.SetPrefix("[main]")
  log.Println("Log")
  log.Panicln("panic log")
}

Flag

Metodlar

go
func (l *Logger) Flags() int //Erişim

func (l *Logger) SetFlags(flag int) //Ayarla

Sabitler

go
const (
   Ldate         = 1 << iota     // Tarih
   Ltime                         // Zaman
   Lmicroseconds                 // Mikrosaniye
   Llongfile                     // Tam dosya adı
   Lshortfile                    // Kısa dosya adı
   LUTC                          // Saat dilimi
   Lmsgprefix                    // Önek
   LstdFlags     = Ldate | Ltime // Başlangıç değeri
)

Örnek

go
func main() {
   log.SetFlags(log.Lshortfile | log.Lmicroseconds | log.Lmsgprefix | log.Ldate | log.Ltime)
   log.Println("Log")
   log.Panicln("panic log")
}

Elbette log.SetOutput(w io.Writer) kullanarak log çıkış yolunu da ayarlayabilirsiniz veya New metodu ile kendi örneğinizi oluşturabilirsiniz.

go
func New(out io.Writer, prefix string, flag int) *Logger

Kısacası, standart kütüphanenin log paketi sağladığı işlevler yeterince kapsamlı değildir, genellikle daha kapsamlı üçüncü taraf log paketlerini kullanırız, örneğin zap vb.

Golang by www.golangdev.cn edit