一、概述

  除nginx官网源码提供的各种模板,nginx还有第三方模块。官方文档中也列出了nginx的很多第三方模块,除官网之外,还有很多的有用的模块也能在Github上找到。

官网第三方模块地址:https://www.nginx.com/resources/wiki/modules/

公司前端使用的是nginx代理,反向代理了很多域名,流量无法进行区分,nginx本身不支持按域名统计,需要安装第三方模块nginx-module-vts

二、配置安装

2.1 因上线的业务正在运行着nginx程序,需要先查看当前nginx编译参数。

# nginx -V
Tengine version: Tengine/2.2. (nginx/1.8.)
built by gcc 4.4. (Red Hat 4.4.-) (GCC)
TLS SNI support enabled
configure arguments: --prefix=/etc/nginx --with-pcre=../pcre-8.36 --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf ……

2.2 下载nginx-module-vts插件

# cd /usr/local/src/
# git clone git://github.com/vozlt/nginx-module-vts.git

2.3 重新编译nginx,可运行make,不要make install

# cd /usr/local/src/tengine-2.2.
# ./configure --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf ... --add-module=/usr/local/src/nginx-module-vts
# make

2.4 替换原nginx命令,替换完成之后一定要重启nginx否则不会生效。

# mv /usr/sbin/nginx /usr/sbin/nginx.bak        # 备份原来的nginx命令
# cp objs/nginx /usr/sbin/nginx # 把tengine/objs目录中的nginx复制到/usr/sbin/目录中
# nginx -V # 查看是否是新编译的nginx命令,需带--add-module=/usr/local/src/nginx-module-vts此参数
# nginx -s stop # 需要重启nginx,否则不生效,使用kill -USR2 `cat /var/run/nginx.pid`未生效,就被它折腾了一天,
# nginx

2.5 配置ngin,使其生效

http {
vhost_traffic_status_zone; ...

server {
    listen 1080;
    server_name _;   # 内网可以通过http://IP:1080/status 进行访问,1080端口仅对内网开放


location /status {
        vhost_traffic_status_display;
        vhost_traffic_status_display_format html;
    }
    location / {
        return 403;
}
}

}

三、界面展示

更多用法参数https://github.com/vozlt/nginx-module-vts说明

整体界面概览:

备注:定时清空所有数据,重新统计

http://xxx.xxx.xxx.xxx/status/control?cmd=reset&group=*

{"processingReturn":true,"processingCommandString":"reset","processingGroupString":"*","processingZoneString":"","processingCounts":}

Tengine 添加第三方监控模块nginx-module-vts的更多相关文章

  1. AndroidStudio权威教程 AS添加第三方库的6种方式(Jar module so等)

    点击项目设置按钮 依次选择 App > Dependencies 1. 直接搜索法 依次选择 + > Library dependency 这里的搜索一定要是全名的,不然搜不到哦 下图所表 ...

  2. Emiller's Advanced Topics In Nginx Module Development

    Emiller的Nginx模块开发指南 By Evan Miller DRAFT: August 13, 2009 (changes) 翻译:Kongch @2010年1月5日 0:04am -- 2 ...

  3. 用lua nginx module搭建一个二维码

    用lua nginx module搭建一个二维码(qr code)生成器 作者 vinoca 發布於 2014年10月31日 如果有VPS,或者开源的路由器,安装一个nginx,添加lua-nginx ...

  4. tengine编译安装及nginx高并发内核参数优化

    Tengine Tengine介绍 Tengine是由淘宝网发起的Web服务器项目.它在Nginx的基础上,针对大访问量网站的需求,添加了很多高级功能和特性. Tengine的性能和稳定性已经在大型的 ...

  5. Ubuntu系统apt添加第三方PPA源

    一.前言 1.1目的 在使用Ubuntu时往往apt源会自带很多常用软件,但是大部分都是比较老的版本,本文主要是为了实现以下两个目的: 通过添加第三方的PPA源解决软件版本过低或者没有安装包的情况: ...

  6. 网站添加第三方登陆(PHP版)

    这两周正在写毕业设计,我做的是一个问答网站.先介绍一下这个网站:这是一个关于大学生在线问答的网站,类似知乎和百度知道,不过功能没有人家多,毕竟这个网站我一个人在做.网站部署在阿里云,网站包括API,W ...

  7. android添加第三方字体并设置的简单使用

    1.java文件 package lpc.com.project006; import android.app.Activity; import android.content.res.AssetMa ...

  8. iOS——Xcode中添加第三方库

    一.只有.h和.a文件的库 1.向项目中添加三方库文件 如果添加的第三方库只有.h和.a文件,直接把文件夹拖进项目下面,这时会弹出下面的提示框,一定要勾选下面选择的选项: 这里要注意,在Add to ...

  9. 为centos添加第三方源

    默认centos自带的源少了很多好软件,所以需要添加第三方源一.安装CentOS yum源优先级插件yum-prioritiesyum install yum-plugin-priorities.no ...

随机推荐

  1. 7.打开文件、文件读写操作、with方式、文件常用函数

    打开文件: 在python3中,打开文件的函数是: open(file, mode='r', buffering=None, encoding=None, errors=None, newline=N ...

  2. LeetCode题解之Leaf-Similar Trees

    1.题目描述 2.问题分析 将叶子节点的值放入vector,然后比较. 3.代码 bool leafSimilar(TreeNode* root1, TreeNode* root2) { vector ...

  3. spring定时任务表达式

    @Scheduled 注解 cron表达式 一个cron表达式有至少6个(也可能7个)有空格分隔的时间元素. 按顺序依次为 秒(0~59) 分钟(0~59) 小时(0~23) 天(月)(0~31,但是 ...

  4. SQL Server 的 RowGuid/RowGuidCol 是什么意思?

    SQL Server 中设计表时,有个属性叫 RowGuid(用 SQL 时,关键词是 RowGuidCol),这个是什么意思呢?这个是全局唯一标识符,与“标识”不同,标识是只在本表中唯一,全局唯一标 ...

  5. Twain Capabilities 转

    转自:http://blog.csdn.net/pamxy/article/details/8629213 Asynchronous Device Events   异步设备事件 CAP_DEVICE ...

  6. 转:.NET面试题汇总(三)

    原文地址:http://www.cnblogs.com/yuan-jun/p/6600692.html 1.简述 private. protected. public. internal 修饰符的访问 ...

  7. java读取txt文件的2中方法---并将内容(每一行以固定的字符分割切成2段)存到map中去

    #java读取txt文件的第一种方法 /** * 方法:readTxt * 功能:读取txt文件并把txt文件的内容---每一行作为一个字符串加入到List中去 * 参数:txt文件的地址 * 返回: ...

  8. UML学生成绩管理系统需求分析

    学生成绩管理系统工作室高校教育工作的一项重要内容.教务管理工作是指学校管理人员按照一定的教育方针,运用先进的管理手段,组织.协调.指挥并指导各用户活动,一边高效率.高质量地完成各项教学任务,完成国家所 ...

  9. 使用Tensorflow训练自己的数据

    训练自己的数据集(以bottle为例):   1.准备数据 文件夹结构: models ├── images ├── annotations │ ├── xmls │ └── trainval.txt ...

  10. vue项目 使用nginx代理

    nginx是一个高性能的HTTP和反向代理服务器.因此常用来做静态资源服务器和后端的反向代理服务器.本文主要记录使用nginx去部署使用vue搭建的前端项目,项目基于vue官方的脚手架vue-cli构 ...