def setup_logging(stream_log_level=None, log_path=None, file_log_level=None, **kwargs): global PKG_FILE_HANDLER, PKG_STREAM_HANDLER if log_path: if PKG_FILE_HANDLER: PKG_LOGGER.removeHandler(PKG_FILE_HANDLER) PKG_FILE_HANDLER = logging.FileHandler(log_path) ROOT_LOGGER.addHandler(PKG_FILE_HANDLER) if file_log_level: PKG_FILE_HANDLER.setLevel(file_log_level) if stream_log_level: if not PKG_STREAM_HANDLER: PKG_STREAM_HANDLER = logging.StreamHandler() if os.name != 'nt': PKG_STREAM_HANDLER.setFormatter(coloredlogs.ColoredFormatter()) PKG_STREAM_HANDLER.addFilter(coloredlogs.HostNameFilter()) PKG_STREAM_HANDLER.addFilter(coloredlogs.ProgramNameFilter()) ROOT_LOGGER.addHandler(PKG_STREAM_HANDLER) PKG_STREAM_HANDLER.setLevel(stream_log_level) # TODO: maybe process quiet differently so that it does not add a stream handler if PKG_STREAM_HANDLER: logging.info("stream log level: %s", PKG_STREAM_HANDLER.level) if PKG_FILE_HANDLER: logging.info("file log level: %s", PKG_FILE_HANDLER.level)
def log_to_disk(self): logFormatter=logging.Formatter(XPAL_LOG_FORMAT) fileHandler = logging.FileHandler("{0}/{1}.log".format(self.sessionpath, "jeevasession")) fileHandler.setFormatter(logFormatter) fileHandler.addFilter(coloredlogs.HostNameFilter()) self.logger.addHandler(fileHandler) self.sessionlogfile=os.path.join(self.sessionpath,"jeevasession.log") self.logger.info("Saving messages to log at " + colored.stylize(self.sessionlogfile,colored.fg("yellow"))) if os.path.exists(os.path.join(self.datapath,"xpal.log")): os.remove(os.path.join(self.datapath,"xpal.log")) os.symlink(self.sessionlogfile, os.path.join(self.datapath,"xpal.log"))
def update_name(self): try: self.name=self.get_property("name") except: self.name=self.get_property("uuid") logFormatter=logging.Formatter(SOMA_LOG_FORMAT) fileHandler = logging.FileHandler("{0}/{1}.log".format(os.path.split(self.jsonfile)[0], "somasession")) fileHandler.setFormatter(logFormatter) fileHandler.addFilter(coloredlogs.HostNameFilter()) self.logger.addHandler(fileHandler) self.logger.info("Saving messages to log at " + os.path.join(os.path.split(self.jsonfile)[0],"somasession.log"))
def setup_logger(self): self.logger = logging.getLogger() if self.quiet: self.logger.setLevel(logging.CRITICAL) else: self.logger.setLevel(logging.DEBUG) self.file_handler = logging.FileHandler(self.log_file) self.file_handler.setLevel(logging.DEBUG) if self.args.enable_log_file: self.logger.addHandler(self.file_handler) self.stream_handler = logging.StreamHandler() self.stream_handler.setLevel(self.log_level) if os.name != 'nt': self.stream_handler.setFormatter(coloredlogs.ColoredFormatter()) self.stream_handler.addFilter(coloredlogs.HostNameFilter()) self.stream_handler.addFilter(coloredlogs.ProgramNameFilter()) self.logger.addHandler(self.stream_handler)
LOG_FILE = ".rainbowz.log" PROC_DATA_FILE = "rainbowz_proc.csv" GET_DATA_FILE = "rainbowz_get.csv" ENABLE_LOG_FILE = True ENABLE_PROC_DATA = True ENABLE_GET_DATA = False logger = logging.getLogger() logger.setLevel(logging.DEBUG) file_handler = logging.FileHandler(LOG_FILE) file_handler.setLevel(logging.DEBUG) stream_handler = logging.StreamHandler() stream_handler.setLevel(STREAM_LOG_LEVEL) if os.name != 'nt': stream_handler.setFormatter(coloredlogs.ColoredFormatter()) stream_handler.addFilter(coloredlogs.HostNameFilter()) stream_handler.addFilter(coloredlogs.ProgramNameFilter()) if ENABLE_LOG_FILE: logger.addHandler(file_handler) logger.addHandler(stream_handler) TELECORTEX_DEV = "/dev/tty.usbmodem35" # to get these values: # pip install pyserial # python -m serial.tools.list_ports TELECORTEX_VID = 0x16C0 TELECORTEX_PID = 0x0483 TELECORTEX_BAUD = 57600 ACK_QUEUE_LEN = 3 PANELS = 4 PANEL_LENGTHS = [333, 260, 333, 333]
IMG_SIZE = 64 MAX_HUE = 360 LOG_FILE = ".interpolate.log" ENABLE_LOG_FILE = False LOGGER = logging.getLogger() LOGGER.setLevel(logging.DEBUG) FILE_HANDLER = logging.FileHandler(LOG_FILE) FILE_HANDLER.setLevel(logging.DEBUG) STREAM_HANDLER = logging.StreamHandler() STREAM_HANDLER.setLevel(STREAM_LOG_LEVEL) if os.name != 'nt': STREAM_HANDLER.setFormatter(coloredlogs.ColoredFormatter()) STREAM_HANDLER.addFilter(coloredlogs.HostNameFilter()) STREAM_HANDLER.addFilter(coloredlogs.ProgramNameFilter()) if ENABLE_LOG_FILE: LOGGER.addHandler(FILE_HANDLER) LOGGER.addHandler(STREAM_HANDLER) TELECORTEX_DEV = "/dev/tty.usbmodem35" TARGET_FRAMERATE = 20 ANIM_SPEED = 3 # Pixel mapping from pixel_map_helper.py in touch_dome INTERPOLATION_TYPE = 'nearest' DOT_RADIUS = 0
def __init__(self, configfile, launchbrowser=True, headless=False): config = ConfigParser.ConfigParser() config.read(configfile) self.config = config self.configfile = configfile try: self.name = config.get("System", "name") except: self.name = "SoMA Cyborg" self.logger = logging.getLogger(self.name) coloredlogs.install(level="DEBUG", logger=self.logger, fmt=SOMA_CONSOLE_FORMAT, level_styles=SOMA_LEVEL_STYLES, field_styles=SOMA_FIELD_STYLES) self.logger.info( "Hi there....let me just find my bearings from the config file " + self.configfile) self.logger.info("Setting up the directories for this session...") self.datapath = config.get("System", "datapath") sessionpathprefix = config.get("System", "sessionpathprefix") ts = datetime.now() sessiondir = sessionpathprefix + "-" + ts.strftime("%Y%b%d-%H%M%S") self.sessionpath = os.path.join(self.datapath, sessiondir) self.sessiondownloaddir = os.path.join(self.sessionpath, "downloads") self.sessionjsonpath = os.path.join(self.sessionpath, "json") if not os.path.exists(self.datapath): self.logger.info("Data path %s did not exist, so creating it" % (self.datapath)) os.mkdir(self.datapath) if not os.path.exists(self.sessionpath): self.logger.info("Creating a new path %s for this session" % self.sessionpath) os.mkdir(self.sessionpath) if not os.path.exists(self.sessiondownloaddir): self.logger.info( "Creating a new download path %s for this session" % self.sessiondownloaddir) os.mkdir(self.sessiondownloaddir) if not os.path.exists(self.sessionjsonpath): self.logger.info("Creating a new json path %s for this session" % self.sessionjsonpath) os.mkdir(self.sessionjsonpath) logFormatter = logging.Formatter(SOMA_LOG_FORMAT) fileHandler = logging.FileHandler("{0}/{1}.log".format( self.sessionpath, "somasession")) fileHandler.setFormatter(logFormatter) fileHandler.addFilter(coloredlogs.HostNameFilter()) self.logger.addHandler(fileHandler) self.logger.info("Saving messages to log at " + os.path.join(self.sessionpath, "somasession.log")) try: self.fbusr = config.get("User", "fbusername") self.fbpwd = config.get("User", "fbpassword") except: self.logger.warning("Cyborg did not have an FB id configured") try: self.googleusr = config.get("User", "googleusername") self.googlepwd = config.get("User", "googlepassword") except: self.logger.warning("Cyborg did not have an Google id configured") try: self.outhstore = config.get("Google", "outhstore") self.outhfile = config.get("Google", "outhfile") except: self.logger.warning( "Cyborg did not get a Google drive client secret") if headless == True: self.logger.info("I am a headless cyborg...") os.environ['MOZ_HEADLESS'] = '1' if launchbrowser == True: self.logger.info("Since you asked for a browser...") self.driver = self.get_driver() else: self.driver = None