乐趣区

关于云计算:日志服务之分析用户访问行为

简介

场景将提供一台配置了 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. 在保留提醒对话框中,单击确认。

退出移动版