def __init__(self):
self.config = ConfigParser.SafeConfigParser()
#look for a user specific config (presumably with api keys)
userConfigPath = appdirs.user_config_dir('CycloTrain')
configFile = os.path.join(userConfigPath, 'config.ini')
if os.path.isfile(configFile):
self.config.read(configFile)
else:
configFile = Utilities.getAppPrefix('config.ini')
self.config.read(configFile)
self.timezone = timezone(self.config.get('general', 'timezone'))
self.units = self.config.get("general", "units")
self.apiKey = self.config.get("api_keys", "strava") if self.config.has_option('api_keys', 'strava') else None
if self.config.has_option('general', 'logfile'):
logfile = self.config.get("general", "logfile")
else:
logfile = Utilities.getAppPrefix('gb580.log')
#logging http://www.tiawichiresearch.com/?p=31 / http://www.red-dove.com/python_logging.html
handler = logging.FileHandler(logfile, mode='w')
formatter = logging.Formatter('%(asctime)s %(levelname)s %(name)s %(lineno)d %(funcName)s %(message)s')
handler.setFormatter(formatter)
handler.setLevel(logging.DEBUG)
self.logger = logging.getLogger('GB500')
self.logger.addHandler(handler)
self.logger.setLevel(logging.DEBUG)
outputHandler = logging.StreamHandler()
if self.config.getboolean("debug", "output"):
level = logging.DEBUG
format = '%(levelname)s %(funcName)s(%(lineno)d): %(message)s'
else:
level = logging.INFO
format = '%(message)s'
outputHandler.setFormatter(logging.Formatter(format))
outputHandler.setLevel(level)
self.logger.addHandler(outputHandler)
#self._connectSerial()
if self.__class__ is GB500:
product = self.getProductModel()
#downcasting to a specific model
if product == "GB-580":
self.__class__ = GB580
评论列表
文章目录