github.com/mongodb/grip@v0.0.0-20240213223901-f906268d82b9/slogger.go (about)

     1  package grip
     2  
     3  import (
     4  	"github.com/mongodb/grip/level"
     5  	"github.com/mongodb/grip/send"
     6  	"github.com/mongodb/grip/slogger"
     7  )
     8  
     9  // NewJournalerFromSlogger takes a slogger logging instance and
    10  // returns a functionally equivalent Jouranler instance.
    11  func NewJournalerFromSlogger(logger *slogger.Logger) (Journaler, error) {
    12  	l := send.LevelInfo{Default: level.Debug, Threshold: level.Debug}
    13  
    14  	j := NewJournaler(logger.Name)
    15  	if err := j.GetSender().SetLevel(l); err != nil {
    16  		return nil, err
    17  	}
    18  
    19  	sender, err := send.NewMultiSender(logger.Name, l, logger.Appenders)
    20  	if err != nil {
    21  		return nil, err
    22  	}
    23  
    24  	if err := j.SetSender(sender); err != nil {
    25  		return nil, err
    26  	}
    27  
    28  	return j, nil
    29  }