Documentation
¶
Index ¶
- Constants
- func SetErrorHandler(fn func(error))
- type Encoder
- type Level
- type Logger
- func (l *Logger) Debug() *Message
- func (l *Logger) Error() *Message
- func (l *Logger) Fatal() *Message
- func (l *Logger) Info() *Message
- func (l *Logger) Notice() *Message
- func (l *Logger) Set(key string, value interface{}) *Logger
- func (l *Logger) SetEncoder(encoder Encoder)
- func (l *Logger) SetLevel(level Level)
- func (l *Logger) SetOutput(output Output)
- func (l *Logger) SetRunner(runner string)
- func (l *Logger) Setf(key string, format string, args ...interface{}) *Logger
- func (l *Logger) Trace() *Message
- func (l *Logger) Warning() *Message
- type Message
- type Output
- type OutputProperties
- type StdEncoder
- type WriterOutput
Constants ¶
const Version = "0.2.1"
Version est le numéro de version de la dernière "release".
Variables ¶
This section is empty.
Functions ¶
func SetErrorHandler ¶
func SetErrorHandler(fn func(error))
SetErrorHandler permet de spécifier une fonction à appeler en cas d'erreur lors de l'encodage ou de l'envoi vers la sortie.
Types ¶
type Encoder ¶
type Encoder interface {
// Encode le message de log dans un format propre à l'encodeur.
Encode(*Message) ([]byte, error)
}
Encoder représente l'interface qui doit être implémentée par tous les encodeurs.
func NewStdEncoder ¶
func NewStdEncoder() Encoder
NewStdEncoder permet de créer une nouvelle instance d'un encodeur de type "StdEncoder".
type Level ¶
type Level uint32
Level représente un niveau de log.
const ( // Trace TLevel Level = iota // Debug DLevel // Info ILevel // Notice NLevel // Warning WLevel // Error ELevel // Fatal FLevel )
Les différents niveaux de log utilisables.
func GetLevelFromString ¶
GetLevelFromString retourne le niveau de log correspondant à la chaîne de caractères passée en paramètre. Si celle-ci n'est pas valide, le niveau de log "TLevel" est utilisé par defaut.
type Logger ¶
type Logger struct {
// contains filtered or unexported fields
}
Logger représente un logger.
func (*Logger) SetEncoder ¶
SetEncoder permet de modifier la façon d'encoder les messages.
func (*Logger) Setf ¶
Setf permet d'ajouter un couple clé/valeur au contexte. La valeur est créée via l'utilisation d'une chaine de formatage et d'arguments.
type Message ¶
type Message struct {
// Les attributs du logger à l'origine de ce message.
Logger *loggerFields
// Le niveau de log du message.
Level Level
// La date et l'heure de création du message.
DateTime time.Time
// Le libellé du message.
Label string
// L'ensemble de clé/valeur correspondant au contexte du message.
Context []interface{}
}
Message représente un message de log. Une instance de ce type est créée à chaque fois qu'un log doit être effectué.
func (*Message) Msg ¶
Msg permet de définir le libellé du message. L'appel à cette fonction déclenche l'encodage et l'envoi vers la sortie.
func (*Message) Msgf ¶
Msgf permet de définir le libellé du message. Le message est créé via l'utilisation d'une chaine de formatagae et d'arguments. L'appel à cette fonction déclenche l'encodage et l'envoi vers la sortie.
type Output ¶
type Output interface {
// Positionne le flag qui indique si la date et l'heure doivent être écrites.
FlagDateTime(bool)
// Est-ce que la date et l'heure doivent être écrites ?
LogDateTime() bool
// Positionne le flag qui indique si le niveau de log doit être écrit.
FlagLevel(bool)
// Est-ce que le niveau de log doit être écrit ?
LogLevel() bool
// Positionne le flag qui indique si un "\n" doit être ajouté à la fin du message.
FlagNewLine(bool)
// Est-ce qu'un "\n" doit être ajouté à la fin du message ?
AddNewLine() bool
// Cette fonction écrit les données du buffer résultant de l'encodage.
Log(level Level, buf []byte) error
// Cette fonction, si nécessaire, ferme la sortie.
Close() error
}
Output décrit l'interface qui doit être implémentée par toutes les sorties.
var Stderr Output = newStderrOutput()
Stderr correspond à la sortie standard "stderr".
var Stdout Output = newStdoutOutput()
Stdout correspond à la sortie standard "stdout".
type OutputProperties ¶
type OutputProperties struct {
// contains filtered or unexported fields
}
OutputProperties permet de définir les propriétés d'une sortie.
func NewOutputProperties ¶
func NewOutputProperties(fDateTime bool, fLevel bool, fNewLine bool) *OutputProperties
NewOutputProperties permet de créer une instance du type "OutputProperties".
func (*OutputProperties) AddNewLine ¶
func (op *OutputProperties) AddNewLine() bool
AddNewLine permet d'indiquer à l'encodeur si il doit ajouté un "\n" à la fin du message.
func (*OutputProperties) FlagDateTime ¶ added in v0.1.1
func (op *OutputProperties) FlagDateTime(fDateTime bool)
FlagDateTime permet de positionner le flag qui indique si la date et l'heure doivent être écrites.
func (*OutputProperties) FlagLevel ¶ added in v0.1.1
func (op *OutputProperties) FlagLevel(fLevel bool)
FlagLevel permet de positionner le flag qui indique si le niveau de log doit être écrit.
func (*OutputProperties) FlagNewLine ¶ added in v0.1.1
func (op *OutputProperties) FlagNewLine(fNewLine bool)
FlagNewLine permet de positionner le flag qui indique si un "\n" doit être ajouté à la fin du message.
func (*OutputProperties) LogDateTime ¶
func (op *OutputProperties) LogDateTime() bool
LogDateTime permet d'indiquer à l'encodeur si il doit encodé la date et l'heure.
func (*OutputProperties) LogLevel ¶
func (op *OutputProperties) LogLevel() bool
LogLevel permet d'indiquer à l'encodeur si il doit encodé le niveau de log.
type StdEncoder ¶
type StdEncoder struct {
// contains filtered or unexported fields
}
StdEncoder représente l'encodeur standard. Il encode au format "logfmt" le contexte du message.
type WriterOutput ¶
type WriterOutput struct {
io.Writer
*OutputProperties
// contains filtered or unexported fields
}
WriterOutput permet de définir des sorties basées sur un "Writer".
func NewWriterOutput ¶
func NewWriterOutput(iow io.Writer, op *OutputProperties) *WriterOutput
NewWriterOutput permet de créer une instance du type "WriterOutput".