Esempio n. 1
0
    def __init__(self,
                 host="localhost",
                 port=9090,
                 timeout=1000,
                 type='ng',
                 reuse=True,
                 debug=False,
                 headers=None):
        if headers is None:
            headers = {}

        # run the regular Handler __init__
        logging.Handler.__init__(self)

        # default header detection
        if 'host' not in headers:
            headers['host'] = socket.gethostname()

        self.host = host
        self.port = port
        self.timeout = timeout
        self.type = type
        self.reuse = reuse
        self.debug = debug
        self.headers = headers
        self.eventserver = FlumeEventServer(host=self.host,
                                            port=self.port,
                                            timeout=self.timeout,
                                            type=self.type,
                                            reuse=self.reuse,
                                            debug=self.debug)
        self.reconnect = self.eventserver.reconnect
Esempio n. 2
0
    def __init__(self, host="localhost", port=9090, type='ng', headers={}):
        # run the regular Handler __init__
        logging.Handler.__init__(self)

        self.host = host
        self.port = port
        self.type = type
        self.headers = headers
        self.eventserver = FlumeEventServer(host=self.host,
                                            port=self.port,
                                            type=self.type)
    def test_active_nodes_unicity(self):
        """ Ensure the nodes unicity in the actives nodes list.

            Fix:
                2015-11-27: we use a list and we don't check the presence of the same node into the list.
        """
        from flumelogger.eventserver import FlumeEventServer
        from flumelogger.errors import ServerSelectionError

        eventserver = FlumeEventServer(host='localhost:7777,localhost:8888')
        eventserver._remove_node(node=('localhost', 7777))
        self.assertEqual([('localhost', 8888)], eventserver.active_nodes)
    def test_autoreconnect_failed(self):
        """ Ensure the default_nodes keep safe when we remove a node.

            Fix:
                2015-11-27: the default and active nodes variable was link (memory ref).
        """
        from flumelogger.eventserver import FlumeEventServer
        from flumelogger.errors import ServerSelectionError

        eventserver = FlumeEventServer(host='localhost:7777')
        eventserver._remove_node(node=('localhost', 7777))
        self.assertListEqual([('localhost', 7777)], eventserver.default_nodes)
    def test_connect_failed(self):
        """ Ensure ServerSelectionError is raise when the application start
            and no nodes is available.

            Fix:
                2015-11-27: the default_cycle variable block the exception.
        """
        from flumelogger.eventserver import FlumeEventServer
        from flumelogger.errors import ServerSelectionError

        eventserver = FlumeEventServer(host='localhost:7777')
        with self.assertRaises(ServerSelectionError):
            with eventserver as client:
                pass
 def test_default(self):
     from flumelogger.eventserver import FlumeEventServer
     eventserver = FlumeEventServer()
     self.assertEqual(eventserver.active_nodes, [('localhost', 9090)])
 def test_list_host_port(self):
     from flumelogger.eventserver import FlumeEventServer
     eventserver = FlumeEventServer(host=['agent1:7777'])
     self.assertEqual(eventserver.active_nodes, [('agent1', 7777)])
 def test_missing_host(self):
     from flumelogger.eventserver import FlumeEventServer
     from flumelogger.errors import ConfigurationError
     with self.assertRaises(ConfigurationError):
         eventserver = FlumeEventServer(host="")
 def test_multiple_same_port(self):
     from flumelogger.eventserver import FlumeEventServer
     eventserver = FlumeEventServer(host='node1,node1:7777')
     self.assertEqual(eventserver.active_nodes, [('node1', 9090),
                                                 ('node1', 7777)])
 def test_port(self):
     from flumelogger.eventserver import FlumeEventServer
     eventserver = FlumeEventServer(port=7777)
     self.assertEqual(eventserver.active_nodes, [('localhost', 7777)])