示例#1
0
    def test_collect_stats(self, HAProxySocket):
        HAProxySocket.return_value.gen_stats.return_value = [
            ("app_servers", {"svname": "app01", "CurrConns": 15, "hrsp_4xx": 3, "MemMax": "120mb", "FakeStatus": "ok"}),
            ("app_servers", {"svname": "app02", "CurrConns": 8, "hrsp_4xx": None, "MemMax": "100mb"}),
        ]

        p = HAProxyPlugin(Mock())
        p.metrics = {"CurrConns": Mock(), "hrsp_4xx": Mock(), "MemMax": Mock()}

        p.socket = HAProxySocket.return_value

        p.collect_stats()

        p.metrics["CurrConns"].dispatch.assert_has_calls(
            [
                call(plugin_instance="app_servers.app01", values=[15]),
                call(plugin_instance="app_servers.app02", values=[8]),
            ],
            any_order=True,
        )

        p.metrics["hrsp_4xx"].dispatch.assert_has_calls(
            [
                call(plugin_instance="app_servers.app01", values=[3]),
                call(plugin_instance="app_servers.app02", values=[0]),
            ],
            any_order=True,
        )

        self.assertFalse(p.metrics["MemMax"].called)
示例#2
0
    def test_collect_info_skips_unknown_metrics(self, HAProxySocket):
        HAProxySocket.return_value.gen_info.return_value = [("CurConns", 10), ("hrsp_5xx", 0), ("UpstreamErrors", 1)]

        p = HAProxyPlugin(Mock())
        p.metrics = {"CurConns": Mock(), "hrsp_5xx": Mock(), "Fake": Mock()}

        p.socket = HAProxySocket.return_value

        p.collect_info()

        p.metrics["CurConns"].dispatch.assert_called_once_with(plugin_instance="haproxy", values=[10])
        p.metrics["hrsp_5xx"].dispatch.assert_called_once_with(plugin_instance="haproxy", values=[0])
示例#3
0
    def test_collect_info_skips_unknown_metrics(self, HAProxySocket):
        HAProxySocket.return_value.gen_info.return_value = [
            ("CurConns", 10),
            ("hrsp_5xx", 0),
            ("UpstreamErrors", 1),
        ]

        p = HAProxyPlugin(Mock())
        p.metrics = {"CurConns": Mock(), "hrsp_5xx": Mock(), "Fake": Mock()}

        p.socket = HAProxySocket.return_value

        p.collect_info()

        p.metrics["CurConns"].dispatch.assert_called_once_with(
            plugin_instance="haproxy", values=[10],
        )
        p.metrics["hrsp_5xx"].dispatch.assert_called_once_with(
            plugin_instance="haproxy", values=[0],
        )
示例#4
0
    def test_collect_stats(self, HAProxySocket):
        HAProxySocket.return_value.gen_stats.return_value = [
            (
                "app_servers",
                {
                    "svname": "app01",
                    "CurrConns": 15,
                    "hrsp_4xx": 3,
                    "MemMax": "120mb",
                    "FakeStatus": "ok",
                }
            ),
            (
                "app_servers",
                {
                    "svname": "app02",
                    "CurrConns": 8,
                    "hrsp_4xx": None,
                    "MemMax": "100mb",
                }
            )
        ]

        p = HAProxyPlugin(Mock())
        p.metrics = {"CurrConns": Mock(), "hrsp_4xx": Mock(), "MemMax": Mock()}

        p.socket = HAProxySocket.return_value

        p.collect_stats()

        p.metrics["CurrConns"].dispatch.assert_has_calls([
            call(plugin_instance="app_servers.app01", values=[15]),
            call(plugin_instance="app_servers.app02", values=[8]),
        ], any_order=True)

        p.metrics["hrsp_4xx"].dispatch.assert_has_calls([
            call(plugin_instance="app_servers.app01", values=[3]),
            call(plugin_instance="app_servers.app02", values=[0]),
        ], any_order=True)

        self.assertFalse(p.metrics["MemMax"].called)