nginx实时监视访问状态(ngxtop)

  • A+
所属分类:Nginx

ngxtop实时解析nginx访问日志,并且将处理结果输出到终端,功能类似于系统命令top,所以这个软件起名ngxtop。有了ngxtop,你可以实时了解到当前nginx的访问状况,再也不需要tail日志看屏幕刷新。

1. 安装ngxtop

1.1 源码安装

//看到如上输出表示安装成功,安装过程需要网络支持

1.2 ngxtop安装

2. ngxtop使用详解

3. ngxtop实例

3.1 实时状态

nginx

ngxtop

3.2 访问量前十的IP

nginx

ngxtop

4. 注意事项

4.1 ngxtop单条命令无法执行

意识说nginx执行文件要加到PATH路径中,
方法一:软连接

方法二:修改环境变量

方法三:指定配置文件

4.2 虚拟主机配置文件必须在nginx.conf主配置中
一般情况下,我们会将虚拟主机单独写到一个配置文件中,然后nginx.conf做个include。例如我们站点www.ttlsa.com
配置文件:/usr/local/nginx-1.5.2/conf/vhost/www.ttlsa.com.conf
再nginx.conf的http段中添加include vhost/*.conf

这种情况下ngxtop不支持,必须要保证所有配置都在nginx.conf中才行。不知道是否我哪里理解不对,如果是的话,知道的兄弟留言告知。本人在此感激不尽。

5. 结束

ngxtop非常实用,值得推荐。

项目地址:https://github.com/lebinh/ngxtop

weinxin
微信公众号
扫一扫关注运维生存时间公众号,获取最新技术文章~

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

目前评论:11   其中:访客  7   博主  0   引用   4

    • Aceslup 9

      如何离线安装哦。

        • 凉白开 9

          @Aceslup 源码安装便是离线安装。

            • Aceslup 9

              @凉白开 已经装上,缺少好多东西。一步步补装上去才知道呢。

          • 月永月 9

            我nginx.conf 配置了虚拟主机,多个日志输出,执行ngxtop 报错
            Multiple access logs detected in configuration:
            1. /logs/nginx/admin.log
            2. /logs/nginx/mobile.log
            3. /logs/nginx/access.log
            Traceback (most recent call last):
            File "/usr/bin/ngxtop", line 9, in <module>
            load_entry_point(‘ngxtop==0.0.2’, ‘console_scripts’, ‘ngxtop’)()
            File "/usr/lib/python2.6/site-packages/ngxtop-0.0.2-py2.6.egg/ngxtop/ngxtop.py", line 385, in main
            process(args)
            File "/usr/lib/python2.6/site-packages/ngxtop-0.0.2-py2.6.egg/ngxtop/ngxtop.py", line 352, in process
            access_log, log_format = detect_log_config(arguments)
            File "/usr/lib/python2.6/site-packages/ngxtop-0.0.2-py2.6.egg/ngxtop/config_parser.py", line 118, in detect_log_config
            log_path = choose_one(list(access_logs.keys()), ‘Select access log file to process: ‘)
            File "/usr/lib/python2.6/site-packages/ngxtop-0.0.2-py2.6.egg/ngxtop/utils.py", line 11, in choose_one
            selected = raw_input(prompt)
            UnboundLocalError: local variable ‘raw_input’ referenced before assignment

            用ngxtop -l /logs/nginx/mobile.log 就没有正常输出结果 一直如下,没有数据
            Summary:
            | count | avg_bytes_sent | 2xx | 3xx | 4xx | 5xx |
            |———+——————+——-+——-+——-+——-|
            | 0 | | 0 | 0 | 0 | 0 |

            Detailed:
            | request_path | count | avg_bytes_sent | 2xx | 3xx | 4xx | 5xx |
            |—————-+———+——————+——-+——-+——-+——-|

            • 求助 9

              [root@b-nfss conf]# ngxtop -c /usr/local/nginx/conf/nginx.conf
              Error: Access log file is not provided and ngxtop cannot detect it from your config file (/usr/local/nginx/conf/nginx.conf).

              • 张冠李戴 9

                您好,请教一个问题! 在成功安装后,执行:ngxtop info 或 ngxtop -c /usr/local/nginx/conf/nginx.conf 时报错:Error: Access log file is not provided and ngxtop cannot detect it from your config file (/usr/local/nginx/conf/nginx.conf). 这是什么原因,该怎么解决

                  • 运维生存时间 9

                    @张冠李戴 4.2 虚拟主机配置文件必须在nginx.conf主配置中
                    一般情况下,我们会将虚拟主机单独写到一个配置文件中,然后nginx.conf做个include。例如我们站点www.ttlsa.com
                    配置文件:/usr/local/nginx-1.5.2/conf/vhost/www.ttlsa.com.conf

                    请看文章中的这段话。

                • 来自外部的引用: 4

                  • 如何在Linux下使用命令行嗅探HTTP流量 | Geekwolf's Blog
                  • nginx实时监视访问状态(ngxtop) | mysql
                  • Fangfang
                  • 运维生存时间