Home | Trees | Indices | Help |
---|
|
1 # ICE Revision: $Id: /local/openfoam/Python/PyFoam/PyFoam/Infrastructure/Logging.py 1906 2007-08-28T16:16:19.392553Z bgschaid $ 2 """Writes Logfiles""" 3 4 try: 5 import logging 6 hasLogging=True 7 except ImportError: 8 # For Python-versions < 2.3 9 print "Warning: old python-version. No logging-support" 10 hasLogging=False 11 12 from Hardcoded import assertDirectory,logDirectory 13 from os import path,uname 14 15 from PyFoam import configuration as config 16 17 _definedLoggers=[] 1820 """Gets the logging level value from its name""" 21 level=config().get("Logging","default") 22 23 try: 24 level=config().get("Logging",name) 25 except: 26 pass 27 28 value=logging.INFO 29 try: 30 value=getattr(logging,level) 31 except AttributeError,reason: 32 print "WARNING: Wrong specification of debug level "+level+" for log "+name 33 34 return value35 4244 """ 45 @param name: name of the logfile 46 @return: a logger that is correctly set up for pyFoam 47 """ 48 49 if not hasLogging: 50 return DummyLogger() 51 52 log=logging.getLogger(name) 53 if not (name in _definedLoggers): 54 assertDirectory(logDirectory()) 55 lname=path.join(logDirectory(),name) 56 # rot=logging.TimedRotatingFileHandler(lname,when="M",interval=2,backupCount=5) 57 rot=logging.FileHandler(lname) 58 machine=uname()[1].split(".")[0] 59 rot.setFormatter(logging.Formatter(fmt="%(asctime)s "+("%15s" % machine)+":%(process)-6d %(levelname)-8s %(message)s - in %(filename)s:%(lineno)d")) 60 log.addHandler(rot) 61 log.setLevel(_getLoggingLevel(name)) 62 _definedLoggers.append(name) 63 64 return log65
Home | Trees | Indices | Help |
---|
Generated by Epydoc 3.0.1 on Wed Jun 9 23:05:21 2010 | http://epydoc.sourceforge.net |