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) //AyarlaSabitler
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) *LoggerKı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.
