def run_worker(config, dbengine): _cache = cache.CacheManager(dbengine, cache_name='RadiusWorkerCache-%s' % os.getpid()) logger.info('start radius worker: %s' % RADIUSAuthWorker(config, dbengine, radcache=_cache)) logger.info('start radius worker: %s' % RADIUSAcctWorker(config, dbengine, radcache=_cache))
def __init__(self, config=None, dbengine=None, **kwargs): self.config = config settings = dict( cookie_secret="12oETzKXQAGaYdkL5gEmGeJJFuYh7EQnp2XdTP1o/Vo=", login_url="/login", template_path=os.path.join(os.path.dirname(toughnms.__file__), "views"), static_path=os.path.join(os.path.dirname(toughnms.__file__), "static"), xsrf_cookies=True, config=self.config, debug=self.config.system.debug, xheaders=True, ) self.tp_lookup = TemplateLookup( directories=[settings['template_path']], default_filters=['decode.utf8'], input_encoding='utf-8', output_encoding='utf-8', encoding_errors='ignore', module_directory="/tmp/toughnms" ) self.db_engine = dbengine or get_engine(config) self.db = scoped_session(sessionmaker(bind=self.db_engine, autocommit=False, autoflush=False)) self.session_manager = session.SessionManager(settings["cookie_secret"], self.db_engine, 600) self.mcache = cache.CacheManager(self.db_engine) self.nagapi = NagiosApi(self.config) self.mongodb = MongoDB(self.config.database.mongodb_url,self.config.database.mongodb_port) self.aes = utils.AESCipher(key=self.config.system.secret) # cache event init dispatch.register(self.mcache) # app init_route load_handlers(handler_path=os.path.join(os.path.abspath(os.path.dirname(__file__))), pkg_prefix="toughnms.console", excludes=['base','webserver','radius']) self.init_route_permit() # app event init # event_params= dict(dbengine=self.db_engine, mcache=self.mcache, aes=self.aes) # load_events(os.path.join(os.path.abspath(os.path.dirname(toughnms.manage.events.__file__))), # "toughnms.manage.events", excludes=[],event_params=event_params) # for g in self.nagapi.list_hostgroup(): # for host in g.get_effective_hosts(): # permit.add_route(host_perf.HostPerfDataHandler, # r"/gperfdata?group_name=%s&host_name=%s"%(g.hostgroup_name,host.host_name), # utils.safeunicode(host.alias), # MenuRes, # is_menu=True, # order=7.0005) cyclone.web.Application.__init__(self, permit.all_handlers, **settings)
def __init__(self, config=None, log=None, **kwargs): self.config = config self.syslog = log or logger.Logger(config) settings = dict( cookie_secret="12oETzKXQAGaYdkL5gEmGeJJFuYh7EQnp2XdTP1o/Vo=", login_url="/admin/login", template_path=os.path.join(os.path.dirname(__file__), "views"), static_path=os.path.join(os.path.dirname(toughradius.__file__), "static"), xsrf_cookies=True, config=config, debug=self.config.system.debug, xheaders=True, ) self.tp_lookup = TemplateLookup( directories=[settings['template_path']], default_filters=['decode.utf8'], input_encoding='utf-8', output_encoding='utf-8', encoding_errors='replace', module_directory="/tmp/admin") self.db_engine = get_engine(config) self.db = scoped_session( sessionmaker(bind=self.db_engine, autocommit=False, autoflush=False)) self.session_manager = session.SessionManager( settings["cookie_secret"], self.db_engine, 600) self.mcache = cache.CacheManager(self.db_engine) self.db_backup = DBBackup(models.get_metadata(self.db_engine), excludes=[ 'tr_online', 'system_session', 'system_cache', 'tr_ticket' ]) self.aes = utils.AESCipher(key=self.config.system.secret) permit.add_route( cyclone.web.StaticFileHandler, r"/backup/download/(.*)", u"下载数据", MenuSys, handle_params={"path": self.config.database.backup_path}, order=1.0405) self.init_route() self.zauth_agent = authorize.ZAuthAgent(self) self.zacct_agent = acctounting.ZAcctAgent(self) cyclone.web.Application.__init__(self, permit.all_handlers, **settings)
def run_worker(config, dbengine): _cache = None redisconf = config.get('redis') if redisconf: _cache = redis_cache.CacheManager(redisconf, cache_name='RadiusWorkerCache-%s' % os.getpid()) _cache.print_hit_stat(10) else: _cache = cache.CacheManager(dbengine, cache_name='RadiusWorkerCache-%s' % os.getpid()) logger.info('start radius worker: %s' % RADIUSAuthWorker(config, dbengine, radcache=_cache)) logger.info('start radius worker: %s' % RADIUSAcctWorker(config, dbengine, radcache=_cache))
def __init__(self, config=None, dbengine=None, **kwargs): self.config = config self.db_engine = dbengine or get_engine(config) self.cache = cache.CacheManager(self.db_engine) self.db = scoped_session( sessionmaker(bind=self.db_engine, autocommit=False, autoflush=False)) # init task self.expire_notify_task = expire_notify.ExpireNotifyTask(self) self.ddns_update_task = ddns_update.DdnsUpdateTask(self) self.radius_stat_task = radius_stat.RadiusStatTask(self) self.online_stat_task = online_stat.OnlineStatTask(self) self.flow_stat_task = flow_stat.FlowStatTask(self) dispatch.register(radius_events.__call__(self.db_engine, self.cache))
def __init__(self, config=None, dbengine=None, **kwargs): self.config = config self.db_engine = dbengine or get_engine(config,pool_size=20) redisconf = config.get('redis') if redisconf: self.cache = redis_cache.CacheManager(redisconf,cache_name='RadiusTaskCache-%s'%os.getpid()) self.cache.print_hit_stat(10) else: self.cache = cache.CacheManager(self.db_engine,cache_name='RadiusTaskCache-%s'%os.getpid()) self.db = scoped_session(sessionmaker(bind=self.db_engine, autocommit=False, autoflush=False)) # init task self.expire_notify_task = expire_notify.ExpireNotifyTask(self) self.ddns_update_task = ddns_update.DdnsUpdateTask(self) self.radius_stat_task = radius_stat.RadiusStatTask(self) self.online_stat_task = online_stat.OnlineStatTask(self) self.flow_stat_task = flow_stat.FlowStatTask(self) dispatch.register(radius_events.__call__(self.db_engine,self.cache))
def __init__(self, config=None, dbengine=None, **kwargs): self.config = config settings = dict( cookie_secret="12oETzKXQAGaYdkL5gEmGeJJFuYh7EQnp2XdTP1o/Vo=", login_url="/admin/login", template_path=os.path.join(os.path.dirname(toughradius.__file__), "views"), static_path=os.path.join(os.path.dirname(toughradius.__file__), "static"), xsrf_cookies=True, config=self.config, debug=self.config.system.debug, xheaders=True, ) self.tp_lookup = TemplateLookup( directories=[settings['template_path']], default_filters=['decode.utf8'], input_encoding='utf-8', output_encoding='utf-8', encoding_errors='ignore', module_directory="/tmp/admin") self.db_engine = dbengine or get_engine(config) self.db = scoped_session( sessionmaker(bind=self.db_engine, autocommit=False, autoflush=False)) self.session_manager = session.SessionManager( settings["cookie_secret"], self.db_engine, 600) self.mcache = cache.CacheManager(self.db_engine) self.db_backup = DBBackup(models.get_metadata(self.db_engine), excludes=[ 'tr_online', 'system_session', 'system_cache', 'tr_ticket' ]) self.aes = utils.AESCipher(key=self.config.system.secret) # cache event init dispatch.register(self.mcache) # app init_route load_handlers(handler_path=os.path.join( os.path.abspath(os.path.dirname(__file__))), pkg_prefix="toughradius.manage", excludes=['views', 'webserver', 'radius']) self.init_route_permit() # app event init event_params = dict(dbengine=self.db_engine, mcache=self.mcache, aes=self.aes) load_events(os.path.join( os.path.abspath(os.path.dirname( toughradius.manage.events.__file__))), "toughradius.manage.events", excludes=[], event_params=event_params) permit.add_route( cyclone.web.StaticFileHandler, r"/admin/backup/download/(.*)", u"下载数据", MenuSys, handle_params={"path": self.config.database.backup_path}, order=5.0005) cyclone.web.Application.__init__(self, permit.all_handlers, **settings)