【问题标题】:Monitoring Mongrel queue length监控 Mongrel 队列长度
【发布时间】:2010-10-02 13:41:46
【问题描述】:

我有一个 Apache + Haproxy + Mongrel 集群设置。当我的 Mongrel 队列长度太长时,我想收到警报。

我如何获取当前的 Mongrel Queue 长度并使其可用于 Monit 和 Nagios 等警报工具?

我知道 Haproxy 有关于 Mongrel 队列的信息,因为它智能地向集群中最不忙的 Mongrel 发送请求。我想知道它是如何发现的?当这种情况出现时,我需要一种类似的机制来生成警报和/或重新启动杂种。

【问题讨论】:

    标签: ruby-on-rails monitoring mongrel


    【解决方案1】:

    将此添加到您的 haproxy 配置中

            stats uri /haproxy/hastats
    

    然后使用 lynx 获取如下统计信息: (假设 haproxy 在端口 10000 上运行 - 调整以适应)

     lynx --dump http://my-server:10000/haproxy/hastats
    

    haproxy 配置文件中的每个服务器条目都会有一行,告诉你它是启动还是关闭,它的队列有多长,如下所示:

                Server                 Queue             Sessions                    Errors
      Name    Weight Status Act. Bck. Curr. Max. Curr. Max. Limit  Cumul.   Conn. Resp. Sec. Check Down
    primary     1      UP    Y    -      0    0    68  386     - 134385861   207   699    0  7028  150
    secondary    1      UP    Y    -      0    0    71  248     - 134464984   216   551    0  7129   98
    

    现在您只需要一个脚本来获取当前队列(第 6 列)并将其输入 nagios,然后您就离开了!

    【讨论】:

      【解决方案2】:

      New Relic 的 RPM 产品 (www.newrelic.com) 维护有关 Mongrel 队列长度的信息。他们有一个 API,您可以使用它来获得关于队列长度的近乎实时的反馈并相应地调整负载平衡。

      您可以在以下位置获取有关 API 的更多信息:https://newrelic.tenderapp.com/faqs/docs/data-api

      希望能提供一些帮助。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-12-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-07-03
        • 1970-01-01
        • 2017-10-18
        • 2018-10-29
        相关资源
        最近更新 更多