def init(self): self.filename, file_extension = os.path.splitext(os.path.basename(__file__)) config_file = os.path.join(os.path.abspath(os.path.dirname(__file__)), '../config', 'config.ini') log_file = os.path.join(os.path.abspath(os.path.dirname(__file__)), '../logs', '%s.log' % self.filename) # load config self.config = configparser.ConfigParser(strict=False, allow_no_value=True) self.config.read(config_file) # init logger logbook.set_datetime_format("local") self.logger = logbook.Logger(name=self.filename) format_string = '%s %s' % ('[{record.time:%Y-%m-%d %H:%M:%S.%f%z}] {record.level_name}', '{record.channel}:{record.lineno}: {record.message}') if self.config.has_option('handler_stream_handler', 'verbose'): loghandler = logbook.StreamHandler(sys.stdout, level=self.config.get('Logger', 'level'), bubble=True, format_string=format_string) self.logger.handlers.append(loghandler) loghandler = logbook.TimedRotatingFileHandler(log_file, level=self.config.get('Logger', 'level'), date_format='%Y%m%d', backup_count=5, bubble=True, format_string=format_string) self.logger.handlers.append(loghandler) else: loghandler = logbook.TimedRotatingFileHandler(log_file, level=self.config.get('Logger', 'level'), date_format='%Y%m%d', backup_count=5, bubble=True, format_string=format_string) self.logger.handlers.append(loghandler) self.db = NewsparserDatabaseHandler.instantiate_from_configparser(self.config, self.logger)
def my_logger(original_function, filename="logfileFF.log"): ###THIS IS WHERE I'M STRUGGLING import logbook import sys level = logbook.TRACE if filename: logbook.TimedRotatingFileHandler(filename, level=level).push_application() else: logbook.StreamHandler(sys.stdout, level=level).push_application() msg = f"Logging Initialized. level: {level}, mode: {'stdout mode' if not filename else 'file mode: ' + filename}" logger = logbook.Logger("Startup level") logger.notice(msg) logger.trace(f"Starting request for city id: {city_id}") def wrapper(*args, **kwargs): result = original_function(*args, **kwargs) wrap_logger = logbook.Logger("Wrapper Level") wrap_logger.trace(f"Search finished for city id: {city_id}") return result return wrapper
def main(): logbook.TimedRotatingFileHandler( "rpg_log.log", level=logbook.TRACE ).push_application() app_logger = logbook.Logger("App") try: app_logger.trace("Setting up game ...") game = Game() app_logger.trace("Game setup finished") except Exception as e: print(f"There was an error setting up the game: {e}") app_logger.error("There was an error setting up the game:") app_logger.exception(e) return game.print_header() try: app_logger.trace("Entering Game Loop") game.loop() app_logger.trace("Exited game loop normally") except KeyboardInterrupt as e: print(f"\nKeyboard Interrupt: Quitting the game...") app_logger.warn("Keyboard Interrupt: Quitting the game...") except Exception as e: print(f"Exception during the game:{e}") app_logger.error("Uncaught exception, exiting the game") app_logger.exception(e)
def test_timed_rotating_file_handler(self): basename = os.path.join(self.dirname, 'trot.log') handler = logbook.TimedRotatingFileHandler(basename, backup_count=3) handler.format_string = '[{record.time:%H:%M}] {record.message}' def fake_record(message, year, month, day, hour=0, minute=0, second=0): lr = logbook.LogRecord('Test Logger', logbook.WARNING, message) lr.time = datetime(year, month, day, hour, minute, second) return lr with handler: for x in xrange(10): handler.handle(fake_record('First One', 2010, 1, 5, x + 1)) for x in xrange(20): handler.handle(fake_record('Second One', 2010, 1, 6, x + 1)) for x in xrange(10): handler.handle(fake_record('Third One', 2010, 1, 7, x + 1)) for x in xrange(20): handler.handle(fake_record('Last One', 2010, 1, 8, x + 1)) files = [x for x in os.listdir(self.dirname) if x.startswith('trot')] files.sort() self.assertEqual(files, ['trot-2010-01-06.log', 'trot-2010-01-07.log', 'trot-2010-01-08.log']) with open(os.path.join(self.dirname, 'trot-2010-01-08.log')) as f: self.assertEqual(f.readline().rstrip(), '[01:00] Last One') self.assertEqual(f.readline().rstrip(), '[02:00] Last One') with open(os.path.join(self.dirname, 'trot-2010-01-07.log')) as f: self.assertEqual(f.readline().rstrip(), '[01:00] Third One') self.assertEqual(f.readline().rstrip(), '[02:00] Third One')
def get_logger(name='appium', file_log=file_stream, level=''): logbook.set_datetime_format('local') ColorizedStderrHandler(bubble=False, level=level).push_thread() logbook.TimedRotatingFileHandler( os.path.join(LOG_DIR, '%s.log' % name), date_format='%Y-%m-%d-%H', bubble=True, encoding='utf-8').push_thread() return logbook.Logger(name)
def initLogger(filename, fileLogFlag=True, stdOutFlag=False): LOG_DIR = os.path.join('log') if not os.path.exists(LOG_DIR): os.makedirs(LOG_DIR) logbook.set_datetime_format('local') logger = logbook.Logger(filename) logger.handlers = [] if fileLogFlag: logFile = logbook.TimedRotatingFileHandler(os.path.join( LOG_DIR, '%s.log' % 'log'), date_format='%Y-%m-%d', bubble=True, encoding='utf-8') logFile.formatter = logFormate logger.handlers.append(logFile) if stdOutFlag: logStd = logbook.more.ColorizedStderrHandler(bubble=True) logStd.formatter = logFormate logger.handlers.append(logStd) return logger
def get_logger(name=APP_NAME, file_log=False): logbook.set_datetime_format('local') ## 是否输出到sys.stdout ColorizedStderrHandler(bubble=False).push_application() if file_log: logbook.TimedRotatingFileHandler(LOG_PATH, date_format='%Y%m%d', bubble=True).push_application() return logbook.Logger(name)
def test_timed_rotating_file_handler(tmpdir, activation_strategy, backup_count): basename = str(tmpdir.join('trot.log')) handler = logbook.TimedRotatingFileHandler( basename, backup_count=backup_count) handler.format_string = '[{record.time:%H:%M}] {record.message}' def fake_record(message, year, month, day, hour=0, minute=0, second=0): lr = logbook.LogRecord('Test Logger', logbook.WARNING, message) lr.time = datetime(year, month, day, hour, minute, second) return lr with activation_strategy(handler): for x in xrange(10): handler.handle(fake_record('First One', 2010, 1, 5, x + 1)) for x in xrange(20): handler.handle(fake_record('Second One', 2010, 1, 6, x + 1)) for x in xrange(10): handler.handle(fake_record('Third One', 2010, 1, 7, x + 1)) for x in xrange(20): handler.handle(fake_record('Last One', 2010, 1, 8, x + 1)) files = sorted(x for x in os.listdir(str(tmpdir)) if x.startswith('trot')) assert files == ['trot-2010-01-0{0}.log'.format(i) for i in xrange(5, 9)][-backup_count:] with open(str(tmpdir.join('trot-2010-01-08.log'))) as f: assert f.readline().rstrip() == '[01:00] Last One' assert f.readline().rstrip() == '[02:00] Last One' if backup_count > 1: with open(str(tmpdir.join('trot-2010-01-07.log'))) as f: assert f.readline().rstrip() == '[01:00] Third One' assert f.readline().rstrip() == '[02:00] Third One'
def main(): # Set up logging for the whole app util.ensure_dir(LOG_FILENAME) logbook.TimedRotatingFileHandler(LOG_FILENAME, bubble=True).push_application() logbook.StreamHandler(sys.stdout, level="NOTICE", bubble=True).push_application() log = logbook.Logger(__name__.split(".", 1)[-1]) log.info("*" * 80) log.info("***" + "Starting CLI Parser for binance-monitor".center(74) + "***") log.info("*" * 80) parser = argparse.ArgumentParser( description="CLI for monitoring Binance account information" ) parser.add_argument( "--update", help="Update trades from server", action="store_true" ) parser.add_argument( "--force", help="Update trades for all symbols, regardless of blacklist", action="store_true", ) parser.add_argument("--listen", help="Listen for new trades", action="store_true") parser.add_argument("--blacklist", help="Add symbol(s) to blacklist", nargs="*") parser.add_argument( "--whitelist", help="Remove symbol(s) from blacklist", nargs="*" ) parser.add_argument( "--csv", help="Write out CSV file of trades (from cache)", action="store_true" ) args = parser.parse_args() acct_monitor = monitor.AccountMonitor() blacklist_from_cli(args.blacklist or None) whitelist_from_cli(args.whitelist or None) force_all = True if args.force else False if args.update: acct_monitor.get_all_trades(force_all=force_all) acct_monitor.trade_store.save() if args.listen: acct_monitor.start_user_monitor() while True: try: time.sleep(60 * 60 * 24) except KeyboardInterrupt: print("\nExit requested...") break if args.csv: acct_monitor.trade_store.to_csv() if reactor.running: reactor.callFromThread(reactor.stop)
def init_logging(filename: str = None): level = logbook.TRACE if filename: logbook.TimedRotatingFileHandler( filename, level=level).push_application() # default date format else: logbook.StreamHandler(sys.stdout, level=level).push_application()
def get_logger(name='jiekou', file_log=file_stream, level=''): """ get logger Factory function """ logbook.set_datetime_format('local') ColorizedStderrHandler(bubble=False, level=level).push_thread() logbook.TimedRotatingFileHandler( os.path.join(log_path, '%s.log' % name), date_format='%Y-%m-%d-%H', bubble=True, encoding='utf-8').push_thread() return logbook.Logger(name)
def get_logger(name="interface_Test", file_log=file_stream, level=''): """ get logger Factory function """ logbook.set_datetime_format("local") ColorizedStderrHandler(bubble=False, level=level).push_thread() logbook.TimedRotatingFileHandler( os.path.join(LOG_DIR, "%s.log" %"Log"), date_format="%Y-%m-%d-%H", bubble=True, encoding="utf-8").push_thread() return logbook.Logger(name)
def logging_init(logfile=None): if logfile: logbook.TimedRotatingFileHandler( logfile, level=logbook.INFO, date_format='%Y-%m-%d').push_application() else: logbook.StreamHandler(sys.stdout, level=logbook.INFO).push_application()
def init(self): """init all helpers and services""" self.filename, file_extension = os.path.splitext(os.path.basename(__file__)) # parse argument parser = argparse.ArgumentParser() parser.add_argument("--configdir", help="your config.ini directory", type=str) parser.add_argument("--logdir", help="your log directory", type=str) args = parser.parse_args() # determine config directory if args.configdir: config_file = os.path.join(args.configdir, 'config.ini') else: config_file = os.path.join(os.path.abspath(os.path.dirname(__file__)), '../config', 'config.ini') if args.logdir: log_file = os.path.join(args.logdir, '%s.log' % self.filename) else: log_file = os.path.join(os.path.abspath(os.path.dirname(__file__)), '../logs', '%s.log' % self.filename) # load config self.config = configparser.ConfigParser() self.config.read(config_file) # init logger logbook.set_datetime_format("local") self.logger = logbook.Logger(name=self.filename) format_string = '%s %s' % ('[{record.time:%Y-%m-%d %H:%M:%S.%f%z}] {record.level_name}', '{record.module}:{record.lineno}: {record.message}') if self.config.has_option('handler_stream_handler', 'verbose'): log_handler = logbook.StreamHandler(sys.stdout, level=self.config.get('Logger', 'level'), bubble=True, format_string=format_string) self.logger.handlers.append(log_handler) log_handler = logbook.TimedRotatingFileHandler(log_file, level=self.config.get('Logger', 'level'), date_format='%Y%m%d', backup_count=5, bubble=True, format_string=format_string) self.logger.handlers.append(log_handler) else: log_handler = logbook.TimedRotatingFileHandler(log_file, level=self.config.get('Logger', 'level'), date_format='%Y%m%d', backup_count=5, bubble=True, format_string=format_string) self.logger.handlers.append(log_handler) # init database self.solrForum = SolrForumHandler.get_instance((self.config.get('Solr', 'solr_forum_url')), True)
def global_init(logfile): if logfile: logbook.TimedRotatingFileHandler( logfile, level=logbook.Info, date_format='%Y-%m-%d').push_application() else: logbook.StreamHandler(sys.stdout, level=logbook.TRACE).push_application()
def logging_register(): level = logbook.TRACE log_filename = None if not log_filename: logbook.StreamHandler(sys.stdout, level=level).push_application() else: logbook.TimedRotatingFileHandler(log_filename, level=level).push_application()
def __init__(self, name, loop=None): self._name = name self._log_handler = logbook.TimedRotatingFileHandler( '{}-p{}.log'.format(name, os.getpid()), format_string=AsyncApp.LOG_FORMAT) self._loop = loop if loop else asyncio.get_event_loop() self._loop.add_signal_handler(signal.SIGINT, self._on_sigint) self._run_cbs = set() self._shutdown_cbs = set()
def init_logging(filename: str = None): level = logbook.TRACE log_filename = "logbook" if not log_filename: logbook.StreamHandler(sys.stdout, level=level).push_application() else: logbook.TimedRotatingFileHandler(log_filename, level=level).push_application()
def init_logging(): level = logbook.TRACE logbook.TimedRotatingFileHandler('logs.log', level=level).push_application() msg = 'Logging initialized, level: {}, mode: {}'.format( level, 'file mode: logs.log') logger = logbook.Logger('Startup') logger.notice(msg)
def init_logging(filename: str = None): level = logbook.TRACE if filename: logbook.TimedRotatingFileHandler(filename, level=level).push_application() else: logbook.StreamHandler(sys.stdout, level=level).push_application() msg = f"Logging initialized: level = {level}" logger = logbook.Logger('Startup') logger.notice(msg)
def get_logger(name='接口', level=''): #设置时间格式 logbook.set_datetime_format('local') ColorizedStderrHandler(bubble=False, level=level).push_thread() logbook.TimedRotatingFileHandler(os.path.join(path, '%s.log' % name), date_format='%Y-%m-%d-%H', bubble=True, encoding='utf-8').push_thread() #print('join_path =' + os.path.join(path,'%s.log' % name)) return logbook.Logger(name)
def metadata(path, email, update): """Download assembly_summary.txt and BioSample metadata.""" logbook.set_datetime_format("local") handler = logbook.TimedRotatingFileHandler(os.path.join( path, ".logs", "metadata.log"), backup_count=10) handler.push_application() genbank = Genbank(path) metadata = genbank.metadata(email=email, update=update) genbank.species_metadata(metadata)
def setup_logging(filename): level = logbook.TRACE if filename: logbook.TimedRotatingFileHandler(filename, level=level).push_application() else: logbook.StreamHandler(sys.stdout, level=level).push_application() msg = f'Logging initialized, level: {level}, mode: {filename}' logger = logbook.Logger('Startup') logger.notice(msg)
def setup_logging(filename=None): level = logbook.TRACE log_filename = filename if not log_filename: logbook.StreamHandler(sys.stdout, level=level).push_application() else: logbook.TimedRotatingFileHandler(log_filename, level=level).push_application() app_log = logbook.Logger('Movie App') return app_log
def init_logging(filename: str = None): level = logbook.TRACE if filename: logbook.TimedRotatingFileHandler(filename, level=level).push_application() else: logbook.StreamHandler(sys.stdout, level=level).push_application() msg = f'Logging initialized, level: {level}, mode: {"stdout mode" if not filename else "file mode: " + filename}' logger = logbook.Logger('Startup') logger.notice(msg)
def get_logger(name='interface', level=''): """ get logger Factory function """ logbook.set_datetime_format('local') # 打印到屏幕句柄 ColorizedStderrHandler(bubble=False, level=level).push_thread() # 打印到文件句柄 logbook.TimedRotatingFileHandler(os.path.join(LOG_DIR, '%s.log' % name), date_format='%Y-%m-%d-%H', bubble=True, encoding='utf-8').push_thread() return logbook.Logger(name)
def cli(ctx, path): """Assess the integrity of your genomes through automated analysis of species-based statistics and metadata. """ if ctx.invoked_subcommand is None: logbook.set_datetime_format("local") handler = logbook.TimedRotatingFileHandler(os.path.join( path, ".logs", "qc.log"), backup_count=10) handler.push_application() genbank = Genbank(path) genbank.qc()
def qc(self): self.prune() for species in self.species(): logbook.set_datetime_format("local") handler = logbook.TimedRotatingFileHandler(Path( species.path, ".logs", "qc.log"), backup_count=10) handler.push_application() try: species.qc() except Exception: self.log.exception(f"qc command failed for {species.name}")
def init_logging(filename=None): level = logbook.TRACE if filename is not None: logbook.TimedRotatingFileHandler(filename, level=level).push_application() else: logbook.StreamHandler(sys.stdout, level=level).push_application() msg = 'Logging initialized, level: {}, mode: {}'.format( level, "stdout mode" if filename is None else "file mode: {}".format(filename)) logger = logbook.Logger('Startup') logger.notice(msg)
def get_logger(self): # Determine config directory log_file = os.path.join( os.path.abspath(os.path.dirname(__file__)), "../logs", "%s.log" % self.filename, ) # init logger logbook.set_datetime_format("local") format_string = "%s %s" % ( "[{record.time:%Y-%m-%d %H:%M:%S.%f%z}] {record.level_name}", "{record.module}:{record.lineno}: {record.message}", ) if not self.verbose: log_handler = logbook.TimedRotatingFileHandler( log_file, level="INFO", date_format="%Y%m%d", backup_count=5, bubble=True, format_string=format_string, ) self._logger.handlers.append(log_handler) log_handler = logbook.StreamHandler(sys.stdout, level="DEBUG", bubble=True, format_string=format_string) self._logger.handlers.append(log_handler) log_handler = logbook.TimedRotatingFileHandler( log_file, level="DEBUG", date_format="%Y%m%d", backup_count=5, bubble=True, format_string=format_string, ) self._logger.handlers.append(log_handler) return self._logger