Ejemplo n.º 1
0
    def _init_handlers(self):
        """
        @summary: 加载应用程序模块

        @return: 初始化成功返回True,否则返回False
        """
        handlers = []
        if config.has_section("services"):
            if config.has_option("services", "enable_pub") and \
                            config.get("services", "enable_pub", "0") == "1":
                handlers.append(((r"/sub/(.+)"), SubHandler))
                handlers.append(((r"/pub/(.+)"), PubHandler))
                
                #
                # 批量订阅支持
                #
                handlers.append(((r"/subs"), SubsHandler))
                handlers.append(((r"/pubs"), PubsHandler))

        handlers.append(((r"/logs"), LogHandler))
        handlers.append(((r"/watch"), WatchHandler))
        host_pattern = ".*$"
        if len(handlers) <= 0:
            return False

        self.add_handlers(host_pattern, handlers)
        return True
Ejemplo n.º 2
0
    def init(self):
        """
        @summary: 初始化所有部分

        @return: 初始化成功返回
        """
        #
        # 初始化处理句柄
        #
        ret = self._init_handlers()
        if not ret:
            return ret

        #
        # 初始化redis监控句柄
        #
        self.pub_sub.init()

        #
        # 初始化piwik统计模块
        #
        self._init_piwik()
        
        if not config.has_section("system"):
            return ret

        #
        # 添加ip检测开关量
        #
        if config.has_option("system", "enable_ip_auth"):
            enable_ip_auth = config.get("system", "trust_ips", "false")
            if enable_ip_auth == "true":
                self.ip_auth = True

        if not config.has_option("system", "trust_ips"):
            return ret

        trust_ips = config.get("system", "trust_ips", "0")
        trust_ip_list = trust_ips.split('|')
        for ip in trust_ip_list:
            if ip in self.trust_ips:
                continue
            self.trust_ips.append(ip)
        return ret
Ejemplo n.º 3
0
    def _init_piwik(self):
        """
        @summary: 初始化统计模块piwik

        @return: 初始化成功返回True,否则返回False
        """
        if not config.has_section("piwik") or \
            not config.has_option("piwik", "enable"):
            return False

        enable_piwik = config.get("piwik", "enable", "false")
        if enable_piwik != "true":
            return True

        self.enable_piwik = True
        return True