简介

场景将提供一台配置了CentOS 7.7版本的ECS实例(云服务器)、日志服务以及SLS Project资源。通过本教程的操作,您能够基于已有环境疾速采集NGINX日志,并创立仪表盘剖析用户拜访行为。

云起实验室日志服务体验

(活动期实现有机会参加100%中奖):https://developer.aliyun.com/...

装置Nginx服务

本步骤将领导您如何在ECS实例上下载、装置并启动NGINX服务。

  1. 在页面右侧,单击 图标,切换至Web Terminal。
  2. 装置Nginx运行所须要的插件。
    2.1 执行如下命令,装置gcc。gcc是Linux下的编译器,它能够编译C、C++、Ada、Object C和Java等语言。
    yum -y install gcc

2.2 执行如下命令,装置pcre。pcre是一个perl库,Nginx的HTTP模块应用pcre来解析正则表达式。
yum install -y pcre pcre-devel

2.3 执行如下命令,装置zlib。zlib是一个文件压缩和解压缩的库,Nginx应用zlib对HTTP数据包进行gzip压缩和解压。
yum install -y zlib zlib-devel

  1. 执行如下命令,下载Nginx安装包。
    wget http://nginx.org/download/ngi...
  2. 执行如下命令,解压Nginx安装包。
    tar -zxvf nginx-1.17.10.tar.gz
  3. 执行如下命令,编译装置Nginx。
    cd nginx-1.17.10
    ./configure
    make && make install
  4. 执行如下命令,启动Nginx。
    cd /usr/local/nginx/
    sbin/nginx
  5. 在页面右侧,单击图标,切换到远程桌面操作界面。
  6. 测试Nginx启动。关上虚构桌面的FireFox ESR浏览器,拜访http://<ECS公网地址>,呈现如下界面示意装置启动胜利。
    阐明:您可在云产品资源列表中查看ECS公网地址。

创立Logstore

本步骤将领导您如何在日志服务控制台中创立Logstore。

  1. 双击关上虚构桌面的Firefox ESR浏览器
  2. 在RAM用户登录框中单击下一步,并复制粘贴页面左上角的子用户明码用户明码输入框,单击登录
  3. 复制下方地址,在Firefox ESR浏览器关上新页签,粘贴并拜访日志服务控制台。
https://sls.console.aliyun.com/
  1. 日志服务控制台下方的Project列表中,抉择Project资源所在地区,而后单击Project名称。

阐明 :您能够在云产品资源列表中查看Project资源所在地区和Project名称。

  1. 在日志存储页面左侧,单击日志库下的 图标。

  1. 创立Logstore对话框中,Logstore名称输出为nginx-log,关上WebTracking开关,而后单击确定

  1. 创立胜利对话框中,单击勾销

采集NGINX日志

本步骤将领导您如何应用日志服务采集NGINX日志。

  1. 在日志存储页面左侧,抉择日志库>nginx-log>数据接入>logtail配置,而后单击 图标。

  1. 疾速接入面板中,单击NGINX-文本日志

  1. 创立机器组页面,单击ECS机器页签,抉择实例选取形式为手动抉择实例,并从实例列表中抉择已创立的ECS实例,而后单击立刻执行

阐明 :您能够在云产品资源列表中查看ECS实例。

  1. 实例列表页签,期待执行状态变为胜利后,单击确认装置结束

  1. 创立机器组页面,自定义名称输出为nginx,而后单击下一步

  1. 机器组配置页面,从源机器组中抉择上一步创立好的机器组,单击 将机器组挪动到利用机器组,而后单击下一步

  1. Logtail配置页面,配置如下参数,单击校验,校验胜利后单击下一步

参数阐明:

  • 配置名称:输出nginx。

    • 日志门路:输出/usr/local/nginx/logs/**/access.log。
    • NGINX日志配置
log_format main  '$remote_addr - $remote_user [$time_local] "$request" '                 '$request_time $request_length '                 '$status $body_bytes_sent "$http_referer" '                 '"$http_user_agent"';
  • 日志样例
192.168.1.2 - - [10/Jul/2020:15:51:09 +0800] "GET /ubuntu.iso HTTP/1.0" 0.000 129 404 168 "-" "Wget/1.11.4 Red Hat modified"

  1. 查问剖析配置页面,单击下一步

  1. 完结页面,单击查问日志

  1. 查问剖析谬误对话框中,单击确定

  1. 在Firefox ESR浏览器关上新页签,拜访http://<ECS公网地址>,并刷新页面几次。

阐明 :您可在云产品资源列表中查看ECS公网地址。

  1. 切换回日志服务页签,单击查问/剖析,您即可看到采集的access.log日志。

剖析用户拜访行为

本步骤领导您如何在仪表盘中创立今日UV、今日PV、起源IP散布、申请状态占比、拜访前十IP、流入流出流量统计和PV预测等图表,进行剖析用户拜访行为。

  1. 在左侧导航栏中,单击图标。

  1. 在仪表盘区域,单击图标。

  1. 在增加仪表盘对话框中,仪表盘名称输出nginx,单击确认。

  1. 在仪表盘区域,单击nginx。

  1. 在nginx仪表盘页面,单击编辑。

  1. 创立今日UV图表。
    在nginx仪表盘编辑页面,单击新建图标。

  1. 在nginx/编辑图表页面的属性配置区域,单击图标。

  1. 在nginx/编辑图表页面,配置如下参数,单击预览。

参数阐明:

  • 图表名称:输出今日UV。
  • 显示题目:关上显示题目。
  • 显示边框:关上显示边框。
  • 显示背景:关上显示背景。
  • 工夫:抉择1天。
  • 查问剖析:抉择nginx-log,输出如下查问语句。
* | select diff[1] as today, round((diff[3]-1.0)*100, 2) as growth FROM (SELECT compare(pv, 86400) as diff FROM (SELECT COUNT(DISTINCT remote_addr) as pv FROM log))

  1. 在nginx/编辑图表页面的属性配置区域,配置如下参数,单击确定。

参数阐明:

  • 图标类型:抉择同步环比图。
  • 显示值:抉择today。
  • 对比值:抉择growth。
  • 比拟值单位:输出%。
  • 数值形容:输出今日UV同比昨日。

返回如下页面,您能够在今日UV图表中看到今日UV同比昨日的数据。

  1. 今日PV图表。

    1. 在nginx仪表盘编辑页面,单击新建图标。

  1. 在nginx/编辑图表页面的属性配置区域,单击图标。

  1. 在nginx/编辑图表页面,配置如下参数,单击预览。

参数阐明:

  • 图表名称:输出今日PV。
  • 显示题目:关上显示题目。
  • 显示边框:关上显示边框。
  • 显示背景:关上显示背景。
  • 工夫:抉择1天。
  • 查问剖析:抉择nginx-log,输出如下查问语句。
* | select diff[1] as today, round((diff[3]-1.0)*100, 2) as growth FROM (SELECT compare(pv, 86400) as diff FROM (SELECT COUNT(1) as pv FROM log))

  1. 在nginx/编辑图表页面的属性配置区域,配置如下参数,单击确定。

参数阐明:

  • 图标类型:抉择同步环比图。
  • 显示值:抉择today。
  • 对比值:抉择growth。
  • 比拟值单位:输出%。
  • 数值形容:输出今日PV同比昨日。

返回如下页面,您能够在今日PV图表中看到今日PV同比昨日的数据。

  1. 起源IP散布。
    在nginx仪表盘编辑页面,单击新建图标。

  1. 在nginx/编辑图表页面的属性配置区域,单击图标。

  1. 在nginx/编辑图表页面,配置如下参数,单击预览。

参数阐明:

  • 图表名称:输出起源IP散布。
  • 显示题目:关上显示题目。
  • 显示边框:关上显示边框。
  • 显示背景:关上显示背景。
  • 工夫:抉择1天。
  • 查问剖析:抉择nginx-log,输出如下查问语句。
* | select count(1) as c, ip_to_province(remote_addr) as address group by address limit 100

  1. 在nginx/编辑图表页面的属性配置区域,省份抉择address,数列值抉择c,单击确定。

返回如下页面,您能够在起源IP散布图表中看到起源IP散布省份的数据。

  1. 申请状态占比。
    在nginx仪表盘编辑页面,单击新建图标。

  1. 在nginx/编辑图表页面的属性配置区域,单击图标。

  1. 在nginx/编辑图表页面,配置如下参数,单击预览。

参数阐明:

  • 图表名称:输出申请状态占比。
  • 显示题目:关上显示题目。
  • 显示边框:关上显示边框。
  • 显示背景:关上显示背景。
  • 工夫:抉择1天。
  • 查问剖析:抉择nginx-log,输出如下查问语句。
* | select count(1) as pv ,status group by status

  1. 在nginx/编辑图表页面的属性配置区域,分类抉择status,数列值抉择pv,单击确定。

返回如下页面,您能够在申请状态占比图表中看到各个申请状态的比例。

  1. 拜访前十IP。
    在nginx仪表盘编辑页面,单击新建图标。

  1. 在nginx/编辑图表页面的属性配置区域,单击图标。

  1. 在nginx/编辑图表页面,配置如下参数,单击预览。

参数阐明:

  • 图表名称:输出拜访前十IP。
  • 显示题目:关上显示题目。
  • 显示边框:关上显示边框。
  • 显示背景:关上显示背景。
  • 工夫:抉择1天。
  • 查问剖析:抉择nginx-log,输出如下查问语句。
* | select count(1) as pv, remote_addr as client_ip  group by client_ip order by pv desc limit 10

  1. 在nginx/编辑图表页面的属性配置区域,X轴抉择client_ip,Y轴抉择pv,单击确定。

返回如下页面,您能够在拜访前十IP图表中看到拜访NGINX次数前十名的IP。

  1. 流入流出流量统计。
    在nginx仪表盘编辑页面,单击新建图标。

  1. 在nginx/编辑图表页面的属性配置区域,单击图标。

  1. 在nginx/编辑图表页面,配置如下参数,单击预览。

参数阐明:

  • 图表名称:输出流入流出流量统计。
  • 显示题目:关上显示题目。
  • 显示边框:关上显示边框。
  • 显示背景:关上显示背景。
  • 工夫:抉择1天。
  • 查问剖析:抉择nginx-log,输出如下查问语句。
* | select sum(body_bytes_sent) as net_out, sum(request_length) as net_in ,date_format(date_trunc('hour', __time__), '%m-%d %H:%i')  as time group by date_format(date_trunc('hour', __time__), '%m-%d %H:%i') order by time limit 10000

  1. 在nginx/编辑图表页面的属性配置区域,X轴抉择time,Y轴抉择net_in和net_out,单击确定。

返回如下页面,您能够在流入流出流量统计图表中看到各个时间段的流入流出流量统计数据。

  1. PV预测。
    在nginx仪表盘编辑页面,单击新建图标。

  1. 在nginx/编辑图表页面的属性配置区域,单击图标。

  1. 在nginx/编辑图表页面,配置如下参数,单击预览,而后单击确定。

参数阐明:

  • 图表名称:输出PV预测。
  • 显示题目:关上显示题目。
  • 显示边框:关上显示边框。
  • 显示背景:关上显示背景。
  • 工夫:抉择4小时天。
  • 查问剖析:抉择nginx-log,输出如下查问语句。
* | select ts_predicate_simple(stamp, value, 6, 1, 'sum') from (select __time__ - __time__ % 60 as stamp, COUNT(1) as value from log GROUP BY stamp order by stamp) LIMIT 1000

返回如下页面,您能够在PV预测图表中看到4个小时内的PV预测数据。

  1. 在nginx仪表盘编辑页面,单击保留。

  1. 在保留提醒对话框中,单击确认。