Ce face log.SetPrefix
log.SetPrefix adaugă un text fix la începutul fiecărui mesaj, înaintea datei. Cu opțiunea log.Lmsgprefix (dată la SetFlags), prefixul se mută după dată, chiar înaintea mesajului.
Este util când mai multe programe scriu în același loc și vrei să știi cine a scris fiecare rând.
Parametri
| Parametru | Descriere |
|---|---|
prefix |
Textul de pus la început (include tu spațiul sau două puncte). |
Ce returnează
Nimic. log.Prefix() returnează prefixul curent.
Exemple
Exemplul 1: Numele aplicației în fiecare rând
package main
import (
"log"
"os"
)
func main() {
log.SetOutput(os.Stdout)
log.SetFlags(0)
log.SetPrefix("[facturi] ")
log.Println("generez factura 1042")
log.Println("trimit e-mail către ana@exemplu.ro")
}
Rezultat
[facturi] generez factura 1042
[facturi] trimit e-mail către ana@exemplu.ro
Exemplul 2: Prefixul după dată, cu Lmsgprefix
package main
import "log"
func main() {
log.SetPrefix("EROARE: ")
log.Println("înainte de dată")
log.SetFlags(log.LstdFlags | log.Lmsgprefix)
log.Println("după dată")
}
Rezultat posibil (diferă la fiecare rulare)
EROARE: 2025/03/14 10:30:00 înainte de dată
2025/03/14 10:30:00 EROARE: după dată
Greșeli frecvente
- Schimbi prefixul jurnalului global din mai multe goroutine ca să marchezi mesajele lor. Prefixul este unul pentru tot programul; creează un
log.Newseparat pentru fiecare componentă.
Comenzi înrudite
log.SetFlags: Alege ce informații se pun la începutul fiecărui rând din jurnal: data, ora, microsecundele, fișierul și linia.log.New: Creează un jurnal separat (*log.Logger), cu propria destinație, prefix și opțiuni.log.SetOutput: Schimbă locul în care scrie jurnalul implicit: alt fișier, ieșirea standard, un buffer sau mai multe deodată.