Nginx stub_status:忽略自己的请求

时间:2017-01-11 08:41:08

标签: nginx monitoring

在Nginx中启用/stats时,可以查询有关服务器的统计信息:

e

我对“处理请求”指标感兴趣。问题是该指标包括发送以查询当前状态的请求。

有没有办法忽略报告数据中针对e的请求?

1 个答案:

答案 0 :(得分:1)

正如您在source code中看到的那样,计数器在新请求"对象"的时刻正好递增。正在创建。也就是说,甚至在解析包括URI在内的任何请求头之前。所以答案是否定的,遗憾的是没有办法告诉Nginx不要计算特定URI的请求。

但是,有两种方法可以解决这个问题。不幸的是,它们都涉及构建自己的Nginx副本:

  1. 您可以直接修补stub status module Nginx,每次stub_status指令生成输出时递减请求conter。为此,您只需在this line的末尾添加this function

  2. 另一种更正确的方法是引入自己的模块,它们将完全相同。这是一个快速制作的example这样的模块。有点令人惊讶,但你不需要强大的C知识来创建简单的模块,因为Nginx提供了自己的框架,GitHub上也有数百个例子。