Пример #1
0
 def __init__(self, vars, decon, reml, loglevel=zlogger.logging.DEBUG, interp="lin", dry_run=False):
     # todo: check vars has subject, func...
     self.__dict__.update(**vars)
     self.vars = vars
     # create output
     if dry_run is True:
         log_fname = None
     else:
         log_fname = op.join(self.outputdir, "logs", "glm_subject.log")
         os.mkdir(self.outputdir)
         os.mkdir(op.join(self.outputdir, "logs"))
     # create logger
     self.slog = zlogger.getLogger("glm_%s" % self.subject, level=loglevel, 
                                   fname=log_fname)
     # save args
     self.tdecon = deepcopy(decon)    # template
     self.treml = deepcopy(reml)      # template
     self.interp = interp
     self.dry_run = dry_run
     return
Пример #2
0
 def __init__(self, subject_list, config_file, interp="lin", cores=1, dry_run=False, verbosity=0, force=False):
     # cores
     os.putenv("OMP_NUM_THREADS", str(cores))
     # config
     self.opts = yaml.load(config_file)
     # args
     self.subject_list = subject_list
     self.interp = interp
     self.dry_run = dry_run
     self.force = force
     # logger
     # note: there is one root logger self.log
     #       and one subject specific logger self.slog
     if verbosity == 0:
         self.loglevel = zlogger.logging.IMPORTANT
     elif verbosity == 1:
         self.loglevel = zlogger.logging.COMMAND_INFO
     else:
         self.loglevel = zlogger.logging.DEBUG
     self.log = zlogger.getLogger("glm_root", level=self.loglevel)
     # setup inputs/outputs and check basics
     self._setup_and_check()
Пример #3
0
 def __init__(self, verbosity, outdir, template_context={}, overwrite=False):
     super(Reporter, self).__init__()
     
     outdir = op.abspath(op.expanduser(outdir))
     if op.isdir(outdir):
         if overwrite:
             shutil.rmtree(outdir)
         else:
             raise ReporterException("Output directory already exists")
     os.mkdir(outdir)
     self.outdir = outdir
     os.mkdir(op.join(outdir, "logs"))
     if self._logname is None:
         raise Exception("You must set the _logname in the class")
     logfile = op.join(op.join(outdir, "logs"), self._logname + ".log")
     
     if verbosity == 0:
         self.loglevel = zlogger.logging.IMPORTANT
     elif verbosity == 1:
         self.loglevel = zlogger.logging.COMMAND_INFO
     else:
         self.loglevel = zlogger.logging.DEBUG
     self.log = zlogger.getLogger(self._logname, level=self.loglevel, fname=logfile, 
                                  allow_exceptions=True)
     
     shutil.copytree(op.join(os.getenv("NISCRIPTS"), "etc", "css"), 
                     op.join(outdir, "css"))
     shutil.copytree(op.join(os.getenv("NISCRIPTS"), "etc", "js"), 
                     op.join(outdir, "js"))
     shutil.copytree(op.join(os.getenv("NISCRIPTS"), "etc", "images"), 
                     op.join(outdir, "images"))
     
     self._setTemplateContext(template_context)
     self.env = Environment(loader=PackageLoader('report', 'templates'))
     self.report = None
     
     return
Пример #4
0
def create_logger(name, level, fname):
    log = zlogger.getLogger(name, level, fname=fname, allow_exceptions=True)
    return log