code: func (s *Syslog) Log(e log.Entry) {
  	s.once.Do(func() {
  		s.formatter = s.formatFunc(s)
  	})
  	line := string(s.formatter(e))
  
  	switch e.Level {
  	case log.DebugLevel:
  		_ = s.writer.Debug(line)
  	case log.InfoLevel:
  		_ = s.writer.Info(line)
  	case log.NoticeLevel:
  		_ = s.writer.Notice(line)
  	case log.WarnLevel:
  		_ = s.writer.Warning(line)
  	case log.ErrorLevel:
  		_ = s.writer.Err(line)
  	case log.PanicLevel, log.AlertLevel:
  		_ = s.writer.Alert(line)
  	case log.FatalLevel:
  		_ = s.writer.Crit(line)
  	}
  }
docs: // Log handles the log entry