code: func shutdownModules() {
  	for i := len(modulesArr) - 1; i >= 0; i-- {
  		modulesArr[i].module.BeforeShutdown()
  	}
  
  	for i := len(modulesArr) - 1; i >= 0; i-- {
  		name := modulesArr[i].name
  		mod := modulesArr[i].module
  
  		logger.Log.Debugf("stopping module: %s", name)
  		if err := mod.Shutdown(); err != nil {
  			logger.Log.Warnf("error stopping module: %s", name)
  		}
  		logger.Log.Infof("module: %s stopped!", name)
  	}
  }
docs: // shutdownModules starts all modules in reverse order