如何使用Amplify监视Nginx

时间:2020-02-23 14:41:35  来源:igfitidea点击:

Amplify是一个功能强大,轻巧且直观的基于SaaS的监视平台,用于监视Nginx和Nginx Plus。
它监视并显示Nginx指标,例如

  • 当前连接
  • 当前请求
  • HTTP错误
  • HTTP版本
  • Nginx内存使用情况
  • Nginx CPU使用率
  • Nginx流量

此外,它还监视操作系统的指标,例如CPU使用率,平均负载,内存使用率,网络流量和交换空间。
在本教程中,我们将学习如何使用Amplify监控SaaS平台来监控Nginx。

前提条件

  • 服务器上安装的Nginx实例。
    推荐阅读:在Ubuntu 18.04上安装Nginx
  • SSH访问服务器。

在本教程中,我们在CentOS 7服务器系统(主机名:spikey)上安装了Nginx实例。

让我们直接进入,看看如何使用Amplify监视Nginx。

步骤1:在Nginx Amplify上注册

首先,您需要创建一个帐户以开始配置。
单击此链接在Amplify中创建一个帐户。

此后,您将收到带有确认链接的电子邮件通知。
单击链接以登录以放大。

步骤2:下载Amplify Install脚本

登录后,将显示以下页面以及说明。
首先,将通过SSH登录到您的服务器。

下一步将使用curl或者wget命令下载安装脚本:

# wget https://github.com/nginxinc/nginx-amplify-agent/raw/master/packages/install.sh

示例输出

步骤3:安装Amplify Agent套件

接下来,运行第二个命令以安装Amplify Agent软件包

# API_KEY='bf7dfaa516e060f9b3b1fe527d48466d' sh ./install.sh

示例输出

成功安装Amplify代理程序包后,服务器将在Amplify上列出,并且指标将开始收集。

点击"继续"按钮转到下一步。

步骤4:配置Nginx以可视化关键指标

下一页将显示另一组说明,如下所示。
将您当前的工作目录更改为/etc/nginx

# cd /etc/nginx

接下来,确认conf.d文件已自动添加到Nginx配置中

grep -i include\.*conf nginx.conf

接下来,创建一个名为stub_status.conf的新文件。

# cat > conf.d/stub_status.conf

复制以下内容并将其粘贴到文件中

server {
	listen 127.0.0.1:80;
	server_name 127.0.0.1;
	location /nginx_status {
		stub_status on;
		allow 127.0.0.1;
		deny all;
	}
}

确认已添加stub_status.conf文件

示例输出

接下来,运行以下命令重新加载Nginx,以使stub_status模块变为活动状态。

kill -HUP `cat /var/run/nginx.pid`

点击"继续"按钮进入下一页。

步骤5:修改nginx.conf文件

最后一步将需要修改/etc/nginx/nginx.conf文件。
我们将专门对3个部分进行调整

error_log

确保属性读取如下所示

error_log /var/log/nginx/error.log warn;

access_log如下所示编辑此属性

access_log /var/log/nginx/access.log main_ext

log_format

最后,对该属性进行更改,如下所示

log_format  main_ext  '$remote_addr - $remote_user [$time_local] "$request" '
                     '$status $body_bytes_sent "$http_referer" '
                     '"$http_user_agent" "$http_x_forwarded_for" '
                     '"$host" sn="$server_name" '
                     'rt=$request_time '
                     'ua="$upstream_addr" us="$upstream_status" '
                     'ut="$upstream_response_time" ul="$upstream_response_length" '
                     'cs=$upstream_cache_status' ;

重新加载Nginx并单击"完成"按钮。