当前位置:首页 > 技术文章 > 正文内容

nginx监控与调优(三)

arlanguage5个月前 (12-13)技术文章42

nginx监控通常有两种方法:一是status监控;二是ngxtop监控。

一、status监控

使用status监控的步骤:

1.确定nginx中status模块是否已安装

[root@localhost sbin]# nginx -V
nginx version: nginx/1.13.7
built by gcc 4.4.7 20120313 (Red Hat 4.4.7-18) (GCC)
configure arguments: --with-http_stub_status_module


如果没有安装status模块,那么使用以下步骤进行安装:

--->找到nginx安装包所存放的位置,nginx安装包的目录是下/home/software/nginx-1.13.7
--->执行以下命令

./configure --with-http_stub_status_module
make

--->在/home/software/nginx-1.13.7/objs目录下会多一个文件nginx

将这个nginx文件拷贝到已经安装好的nginx目录下,覆盖sbin目录下的nginx文件

2.在http上下文中的server上下文中声明一个location的上下文,代码如下:

location /nginx_status {
stub_status on;
access_log off;
allow all;
#deny all;
}
3.进入监控界面

3.进入监控界面

Active connections: 6
server accepts handled requests
36 36 63
Reading: 0 Writing: 1 Waiting: 5
Active connections:活跃的连接数,最大连接数受worker_processes和worker_connections两个
参数的影响。正常情况下最大的连接数可以worker_processes*worker_connections,但是如果做了
反向代理,那么最大的连接数可以到达的值为:worker_processes*worker_connections/2。
accepts:表示已接收的连接数
handled:表示已处理的连接数
requests:表示一共收到的HTTP请求
Reading:表示正在读取请求header的信息
Writing:表示正在响应的请求
Waiting:表示Writing之后状态,为等待的意思

二、ngxtop监控

ngxtop其实是一个日志分析工具

ngxtop语法格式:

Usage:
ngxtop [options]
ngxtop [options] (print|top|avg|sum) ...
ngxtop info
ngxtop [options] query ...

常见用法如下:

1.ngxtop
打开默认ngxtop日志文件
2.ngxtop -l /usr/local/nginx/logs/access_log
打开指定的日志文件
3ngxtop top request_path --filter 'status == 404'
将错误状态码为404的前10个请求打印出来
4.ngxtop --order-by 'avg(bytes_sent) * count'
将发送字节数前10位的排序并显示出来
5.ngxtop --group-by remote_addr
按访问服务器的远程地址进行分组
6.ngxtop -i 'status >= 400' print request status http_referer
将状态码大于400的打印出来,打印的包括请求信息、状态码、相关的URL信息

ngxtop监控到的信息如下:

running for 80 seconds, 24 records processed: 0.30 req/sec
运行时间、已读取的线程数、点击率
Summary:
| count | avg_bytes_sent | 2xx | 3xx | 4xx | 5xx |
|---------+------------------+-------+-------+-------+-------|
| 24 | 2657.167 | 23 | 0 | 1 | 0 |
count:表示总的点击次数
avg_bytes_sent:表示平均发送的字节数

扫描二维码推送至手机访问。

版权声明:本文由AR编程网发布,如需转载请注明出处。

本文链接:http://www.arlanguage.com/post/146.html

标签: nginx的logs
分享给朋友:

“nginx监控与调优(三)” 的相关文章

Docker搭建开发环境(Nginx+MySQL+PHP)

注意事项1、像MySQL配置文件、Nginx配置文件、网站根目录这种比较经常操作的需要先使用 docker cp 将文件从容器里复制到主机目录,docker run的时候直接挂载目录就可以了2、docker run MySQL和Nginx的时候注意使用 --link实现容器之间通信3、运行容器的时候...

K8S中Service使用nginx控制器实现Ingress负载均衡器的一个Demo

写在前面学习K8s中Service遇到,单独整理分享给小伙伴本文内容涉及:ingress-nginx-controller的创建基于ingress-nginx-controller的Ingress的创建基于Ingress的服务发布,SVC负载时间关系,关于Ingresshttp路由负载本文没有涉及部...

使用Keepalived实现Nginx的自动重启及双主热备高可用

推荐阅读:20年清华架构师耗时整整一百天打造1000+道Java高频面试手册1、概述之前我们使用Keepalived实现了Nginx服务的双机主备高可用,但是有几个问题没有解决,今天一起探讨一下。1)在双机主备机制中,Keepalived服务如果宕了,会自动启用备机进行服务,但Nginx服务如果负载...

Nginx常用配置及和基本功能讲解

作者:京东物流 殷世杰Nginx已经广泛应用于J-one和Jdos的环境部署上,本文对Nginx的常用的配置和基本功能进行讲解,适合Ngnix入门学习。1 核心配置找到Nginx安装目录下的conf目录下nginx.conf文件,Nginx的基本功能配置是由它提供的。1.1 配置文件结构Nginx的...

到 2024 年了,全球仍有 76.4% 的网站在用「已死」的 PHP!

如今资历稍长的程序员,提到 PHP 可能都会联想到一个梗:“PHP 是最好的语言。”这个梗并非出自别处,正源自于 PHP 自己的官方文档:早在 2001 年 7 月,PHP 文档中就有一句“PHP is the best language for web programming(PHP 是世界上最好...

Nginx的location里面的root、alias的使用技巧与区别

1. 介绍1.1 介绍福哥在将TFLinux的PHP+Apache的组合转换成PHP+FPM+Nginx的过程里遇到了一个问题,就是Apache的虚拟主机转为Nginx里面的虚拟主机的时候参数怎么解决呢?今天福哥就将Nginx配置文件里面的location、root、alias的使用技巧给大家做一个...