...

Source file src/github.com/sirupsen/logrus/example_default_field_value_test.go

Documentation: github.com/sirupsen/logrus

     1  package logrus_test
     2  
     3  import (
     4  	"os"
     5  
     6  	"github.com/sirupsen/logrus"
     7  )
     8  
     9  type DefaultFieldHook struct {
    10  	GetValue func() string
    11  }
    12  
    13  func (h *DefaultFieldHook) Levels() []logrus.Level {
    14  	return logrus.AllLevels
    15  }
    16  
    17  func (h *DefaultFieldHook) Fire(e *logrus.Entry) error {
    18  	e.Data["aDefaultField"] = h.GetValue()
    19  	return nil
    20  }
    21  
    22  func ExampleDefaultFieldHook() {
    23  	l := logrus.New()
    24  	l.Out = os.Stdout
    25  	l.Formatter = &logrus.TextFormatter{DisableTimestamp: true, DisableColors: true}
    26  
    27  	l.AddHook(&DefaultFieldHook{GetValue: func() string { return "with its default value" }})
    28  	l.Info("first log")
    29  	// Output:
    30  	// level=info msg="first log" aDefaultField="with its default value"
    31  }
    32  

View as plain text