二十.stub_status模块功能(ngx_http_stub_status_module)

来源:互联网 发布:autodesk软件下载 编辑:程序博客网 时间:2024/05/22 07:44
1.描述
  增加对每请求的响应时间的统计:在stub status模块中增加了自Tengine启动以来所有请求的总响应时间(request_time),
  单位为ms,可以用来统计一段时间的平均RT(response time):
  Active connections: 1
  server accepts handled requests request_time
  1140 1140 1140 75806
  Reading: 0 Writing: 1 Waiting: 0
在tsar中监控Tengine/Nginx可以使用我们开发的tsar模块。


2.安装tsar
  $ wget -O tsar.zip https://github.com/alibaba/tsar/archive/master.zip --no-check-certificate
  $ unzip tsar.zip
  $ cd tsar
  $ make
  $ sudo make install


3.安装tsardevel
  $ make tsardevel


4.Tengine/Nginx module for tsar
  这是一个tsar模块,它可以从Tengine/Nginx端采集数据.
  下载源文件 (https://github.com/taobao/tsar-mod_nginx)
  使用指南
1. 安装 tsar.
2. 使用tsar的模块开发工具tsardevel生成一个模块模板
  tsardevel mod_ngx
3. 替换模板中的mod_ngx.c.
  make
  make install
4. 启动tsar.
  tsar --nginx
5.常见用法列表:
tsar -i 1 -l 以1秒钟为间隔,实时打印tsar的概述数据
tsar 显示1天内的历史汇总(summury)信息,以默认5分钟为间隔
tsar --cpu -i 1 显示一天内cpu的历史信息,以1分钟为间隔
tsar --live --mem -i 2 以2秒钟为间隔,实时打印mem的数据。
tsar --cpu --mem -i 1 显示一天内的cpu和内存历史数据,以1分钟为间隔。


5.配置
  A. 默认采集地址和端口分别为127.0.0.1,80。可以通过环境变量来修改:
example:
export NGX_TSAR_HOST=192.168.0.1
export NGX_TSAR_PORT=8080
  B. Tengine/Nginx必须编译了stub_status模块,而且必须在配置文件中增加类似如下配置:
location = /nginx_status {
   stub_status on;
}
  C. 另外我们也可以使用unix域套接字,比如将NGX_TSAR_HOST指定为一个文件路径:
export NGX_TSAR_HOST=/tmp/nginx-tsar.sock
同时,Tengine/Nginx的配置文件中包含location /nginx_status的server也必须是监听在该域套接口路径上
listen unix:/tmp/nginx-tsar.sock;
  D. tsar模块发送给Tengine/Nginx的uri和主机名也可以通过如下环境变量设置:
example:
export NGX_TSAR_SERVER_NAME=status.taobao.com
export NGX_TSAR_URI=/nginx_status

0 0