`

nginx流量带宽等请求状态统计( ngx_req_status)

阅读更多

介绍

ngx_req_status用来展示nginx请求状态信息,类似于apache的status,nginx自带的模块只能显示连接数等等信息,我们并不能知道到底有哪些请求、以及各url域名所消耗的带宽是多少。ngx_req_status提供了这些功能.

功能特性

  • 按域名、url、ip等等统计信息
  • 统计总流量
  • 统计当前带宽\峰值带宽
  • 统计总请求数量

1. 安装

# cd /usr/local/src/
 # wget "http://nginx.org/download/nginx-1.4.2.tar.gz"
 # tar -xzvf nginx-1.4.2.tar.gz
 # wget https://github.com/zls0424/ngx_req_status/archive/master.zip -O ngx_req_status.zip
 # unzip ngx_req_status.zip
 # cd nginx-1.4.2/
 # patch -p1 < ../ngx_req_status-master/write_filter.patch
 # ./configure --prefix=/usr/local/nginx-1.4.2 --add-module=../ngx_req_status-master
 # make -j2
 # make install

2. 配置

http {
 req_status_zone server_name $server_name 256k;
 req_status_zone server_addr $server_addr 256k;
 req_status_zone server_url  $server_name$uri 256k;
req_status server_name server_addr server_url;
server {
 server_name test.ttlsa.com;
 location /ttlsa-req-status {
 req_status_show on;
 }
 }
 }

4. 指令

req_status_zone
语法: req_status_zone name string size
默认值: None
配置块: http
定义请求状态ZONE,请求按照string分组来排列,例如:
req_status_zone server_url  $server_name$uri 256k;
域名+uri将会形成一条数据,可以看到所有url的带宽,流量,访问数

req_status
语法: req_status zone1[ zone2]
默认值: None
配置块: http, server, location
在location中启用请求状态,你可以指定更多zones。

req_status_show
语法: req_status_show on
默认值: None
配置块: location
展示数据

5. 测试访问

http://test.ttlsa.com/ttlsa-req-status
如下图

nginx

req_status

如上有请求的信息,例如req-status这个页面,中流量是146KB,当前带宽是0,总请求数量是47,最大并非连接数是1.

6. 兼容性

以下版本都兼容
1.4.2 我测试的
1.3.x (last tested: 1.3.5)
1.2.x
1.1.x
1.0.x (last tested: 1.0.2)

分享到:
评论

相关推荐

    Nginx配置统计流量带宽请求及记录实时请求状态的方法

    ngx_req_status用来展示nginx请求状态信息,类似于apache的status,nginx自带的模块只能显示连接数等等信息,我们并不能知道到底有哪些请求、以及各url域名所消耗的带宽是多少。ngx_req_status提供了这些功能. 功能...

    Nginx模块ngx_req_status

    ngx_req_status用来展示nginx请求状态信息,类似于apache的status,nginx自带的模块只能显示连接数等等信息,我们并不能知道到底有哪些请求、以及各url域名所消耗的带宽是多少。ngx_req_status提供了这些功能. 1、按...

    ngx_req_stat:nginx 请求统计模块

     ngx_req_stat是一个nginx状态统计模块,其统计项是可配置的,并且可以统计不同的虚拟主机,不同的URL。可以统计的包括请求次数,各个状态码的次数,不同的时间段的次数。输出的流量累计信息,平均处理时间等等。 ...

    ngx_dynamic_limit_req_module:ngx_dynamic_limit_req_module模块用于动态锁定IP并定期释放它

    ngx_dynamic_limit_req_module 介绍 ngx_dynamic_limit_req_module模块用于动态锁定IP并定期释放它。 目录 dynamic_limit_req_zone 设置共享内存区域的参数,该参数将保留各种键的状态。 特别是,状态存储当前的...

    ngx_http_proxy_connect_module.zip

    在这个配置中,Nginx监听8080端口,当接收到CONNECT请求时,会尝试连接到配置的`$proxy_host:$proxy_port`。 使用该模块需要注意一些安全问题,因为透明代理可能被滥用为攻击跳板或绕过防火墙策略。为了安全起见,...

    ngx_devel_kit-0.3.0

    ngx_devel_kit(通常缩写为 NDK)是一个针对Nginx的模块开发工具集,它为构建自定义Nginx模块提供了便利。在Nginx生态系统中,NDK是一个重要的扩展工具,允许开发者利用C语言直接操作Nginx的内部结构,以实现更高级...

    nginx限制连接数ngx_http_limit_conn_module模块1

    在互联网服务中,服务器经常面临流量异常、负载过大的情况,尤其在遭受大流量恶意攻击时,带宽的浪费、服务器压力的增大都会对业务造成严重影响。为了应对这些问题,我们可以利用 Nginx 的 ngx_...

    ngx_cache_purge_2.4.2.tar.gz

    ngx_cache_purge_2.4.2.tar.gz 是一个针对Nginx缓存管理的模块扩展,主要用于清除或刷新Nginx服务器上的HTTP缓存。...在处理动态内容和高流量网站时,ngx_cache_purge是Nginx缓存策略的一个重要补充。

    lua-upstream-nginx-module, Nginx C 模块将Lua向ngx_lua公开,用于 Nginx upstreams.zip

    lua-upstream-nginx-module, Nginx C 模块将Lua向ngx_lua公开,用于 Nginx upstreams 电子邮件名称ngx_http_lua_upstream - Nginx MODULE,用于向 Nginx upstreams公开Lua到 ngx_lua目录NAME状态概要说明函数get_...

    nginx缓存清除插件ngx_cache_purge.zip

    ngx_cache_purge 是 nginx 模块,此模块可以清理 nginx 的 FastCGI、proxy、 SCGI 和 uWSGI 的缓存。配置指令(相同位置语法)fastcgi_cache_purgesyntax: fastcgi_cache_purge on|off|&lt;method&gt; [from all|&lt;ip&gt; [.....

    ngx_lua_module-windows-1.1.2.0

    ngx_lua_module是一款强大的扩展模块,专为Nginx服务器设计,允许在Nginx配置文件中直接嵌入Lua脚本,极大地增强了Nginx的功能和灵活性。这个"ngx_lua_module-windows-1.1.2.0"是该模块的一个Windows版本,适应于...

    ngx_devel_kit-0.2.19.tar.gz

    ngx_devel_kit是Nginx的一个重要扩展模块,它为Nginx提供了一系列的开发工具,方便开发者在Nginx上构建自定义模块。这个0.2.19版本的压缩包“ngx_devel_kit-0.2.19.tar.gz”包含了用于编译和开发Nginx模块所需的源...

    Nginx的SQLite模块ngx_sqlite.zip

    ngx_sqlite 是嵌入 sqlite 数据库的 nginx 模块。通过强大的nginx server,可以使用http协议访问sqlite数据库。环境- sqlite 3- nginx-1.6.3 安装```sh $ git clone https://github.com/rryqszq4/ngx_sqlite.git...

    ngx_stream_ssl_preread_module调研.docx

    NGX_STREAM_SSL_PREREAD_MODULE 模块调研 NGX_STREAM_SSL_PREREAD_MODULE 是一个基于流媒体(Stream)实现的 SSL/TLS 协议 ClientHello 消息提取模块,主要用于提取 SNI(Server Name Indicate)或者 ALPN...

    ngx_http_dav_ext_module.so

    ngx_http_dav_ext_module.so centos7 nginx 1.18 可以作为模块加载

    ngx_stream_module.so

    nginx1.20.2

    ngx_http_consistent_hash-master.zip

    这个模块适用于需要保持请求与特定服务器间稳定关联的场景,如缓存集群、数据库分片等。例如,用户访问特定资源时,通过一致性哈希确保请求始终被路由到同一台服务器,从而避免了缓存穿透问题。 6. **编译与安装:...

    Nginx模块ngx_realtime_request

    ngx_realtime_request是nginx用来统计虚拟主机流量的模块, 首先和大家说下这个模块是基于域名的,将会记录这个域名的请求量、发送字节、返回http状态码的数量,特性如下: 1、基于域名记录 2、记录请求数据量 3、...

Global site tag (gtag.js) - Google Analytics