网站流量日志分析— —数据采集—使用 web 服务器自带日志记录采集|学习笔记

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 快速学习网站流量日志分析——数据采集—使用 web 服务器自带日志记录采集

开发者学堂课程【大数据分析之企业级网站流量运营分析系统开发实战(第一阶段)网站流量日志分析——数据采集—使用 web 服务器自带日志记录采集】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/693/detail/12168


网站流量日志分析——数据采集—使用 web 服务器自带日志记录采集


内容简介

一、网站流量日志数据获取

二、服务器自带日志的记录功能示例

三、小结

本节内容我们学习数据采集模块。我们如果想去开展网站的流量日志分析,首先要能够保证有数据,那么我们如何去获取用户在网站上的访问行为数据呢?

接下来就需要了解我们当下企业当中,网站到底是如何搭建起来的。那么大家就可以想一个问题,如果现在我是老板,给你来一个任务,让你去搭建一个网站,你大概需要哪些东西呢?首先可能需要去买一个服务器,然后去部署一个我们的外部容器,然后用我们的 Java 或者其他软件开发一个外部的项目步置上去,然后安装数据库,把一个 ID 制成域名,那么大家需要这些东西就可以对外提供我们的网站服务。

那么整个网站服务的核心是通过所谓的 HTTP 协议,也即 request response,这种交互的方式来完成我们网站的浏览和请求。


一、网站流量日志数据获取

比如我们现在需要访问一个网站,当我们打开百度时,百度服务器就会接触到请求,并且根据这个请求响应出页面信息,然后在浏览器中进行渲染,得到当下。那么基于这样一个网站搭建背后的技术流程,我们要想去收集用户的程序数据,就有以下方式。

从使用发展来看,主要分为两类:网站日志文件(Log files) 和页面埋点js自定义采集。

随着网站在技术和运营上的不断技术发展,人们对数据的要求越来越高,以求实现更加精细的运营来提升网站的质量。所以数据的获取方式也随着网站技术的进步和人们对网站数据需求的加深而不断地发展。

  1. 网站日志文件

记录网站日志文件的方式是最原始也是最简单的数据获取方式(因为要想搭建网站,对外提供web服务一定需要一个web 应用服务器,常见的,免费的 web 服务器有 tomcat 等,可以对外提供我们的 web 应用服务),主要在服务端完成,在网站的应用服务器配置相应的写日志的功能就能够实现,很多web应用服务器自带日志的记录功能。如 Nginx的 access. log 日志等。

image.png

图片剖析:

我们的用户不管通过什么终端(手机,浏览器,笔记本浏览器),只要在其中输入我们的页面,向我们的服务器发送一个 request 请求,那么我们的服务器就会根据请求给一个 respose,在页面上进行渲染。那么在这种请求响应的同时,我们的应用服务器就会通过内置的日志记录功能,把请求的相关数据记录下来。这时候能记录哪些字段,哪些信息是跟我们的服务器相关,你使用哪家的服务器它自带的数据收集功能已经表明了它可以收集什么。

优点是获取数据时不需要对页面做相关处理,简单便捷,自带功能,不需要配置就可以使用,可以直接开始统计相关请求信息。

缺点在收集的信息确定,有些信息无法采集,比如用户在页面端的操作(如点击,ajax 的使用等)无法记录,限制了一些指标的统计和计算,不利于维护以及收集的信息不够完整全面。


二、服务器自带日志的记录功能示例

打开课程资料,在软件中找到网络流量日志自定义采集服务,再从部署相关文档中找到 nginx.1.13.6 window.zip 压缩包,复制放在根目录下,接下来解压至当前目录中。如果此时双击 nginx.exe,就相当于笔记本变成了一个web服务器,可以对外提供 web 服务。在解压的文件夹中,logs 文件夹中 access.log(记录自带日志,访问有哪些请求) ,error.log(记录错误信息) 和 nginx.pid(记录nginx运行所谓进程号)。

当我们 nginx 启动后,通过浏览器访问本级后,这个请求能否被记录下来?

image.png

因为我们未指定相关页面,那么默认请求就会跳转至 nginx 首页。

接下来打开 access.log 中的 Edit with Notepad++查看是否被记录

image.png

查看结果是已记录

不用进行如何开发就可以进行相关日志数据的收集,说明如果我们对收集的数据要求不高的情况下,我们就可以通过我们服务器自带的日志记录功能来开展收集。

但是它存在最大弊端:它能够收集什么字段,什么信息已经在出厂时设定好了,而且有些信息想要收集但收集不到,比如:我们打开页面它可以收集,但具体点击页面什么它无法收集。这时要想精准掌握用户的行为数据,自带日志的功能无法满足,就需要通过技术去自定义采集收集。


三、小结

数据采集:数据从无到有的采集,如何把用户的访问行为记录下来变成网站的访问日志。

网站的日志文件:网站的 web 服务器自带日志记录的功能,简单便捷的收集一些基础的属性信息。

常见的 web 服务器:Tomcat,nginx,apache sever(HTTPD)。

自带服务器优点:简单便捷,自带功能,不需要配置就可以使用。

自带服务器缺点:收集信息的确定,不利于维护,收集的信息不够完整全面。

使用网站 web 服务器的日志功能可以满足基本需求但收集不够全面,有一些限制,这是第一种方式,叫做网站日志文件,服务器自带日志记录功能,可以满足我们数据从无到有的收集。

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
1月前
|
监控 安全 Apache
什么是Apache日志?为什么Apache日志分析很重要?
Apache是全球广泛使用的Web服务器软件,支持超过30%的活跃网站。它通过接收和处理HTTP请求,与后端服务器通信,返回响应并记录日志,确保网页请求的快速准确处理。Apache日志分为访问日志和错误日志,对提升用户体验、保障安全及优化性能至关重要。EventLog Analyzer等工具可有效管理和分析这些日志,增强Web服务的安全性和可靠性。
|
1月前
|
监控 测试技术 开发者
一行代码改进:Logtail的多行日志采集性能提升7倍的奥秘
一个有趣的现象引起了作者的注意:当启用行首正则表达式处理多行日志时,采集性能出现下降。究竟是什么因素导致了这种现象?本文将探索Logtail多行日志采集性能提升的秘密。
153 23
|
2月前
|
XML 前端开发 JavaScript
PHP与Ajax在Web开发中的交互技术。PHP作为服务器端脚本语言,处理数据和业务逻辑
本文深入探讨了PHP与Ajax在Web开发中的交互技术。PHP作为服务器端脚本语言,处理数据和业务逻辑;Ajax则通过异步请求实现页面无刷新更新。文中详细介绍了两者的工作原理、数据传输格式选择、具体实现方法及实际应用案例,如实时数据更新、表单验证与提交、动态加载内容等。同时,针对跨域问题、数据安全与性能优化提出了建议。总结指出,PHP与Ajax的结合能显著提升Web应用的效率和用户体验。
70 3
|
3月前
|
存储 数据采集 分布式计算
Hadoop-17 Flume 介绍与环境配置 实机云服务器测试 分布式日志信息收集 海量数据 实时采集引擎 Source Channel Sink 串行复制负载均衡
Hadoop-17 Flume 介绍与环境配置 实机云服务器测试 分布式日志信息收集 海量数据 实时采集引擎 Source Channel Sink 串行复制负载均衡
73 1
|
3月前
|
Java PHP
PHP作为广受青睐的服务器端脚本语言,在Web开发中占据重要地位。理解其垃圾回收机制有助于开发高效稳定的PHP应用。
【10月更文挑战第1天】PHP作为广受青睐的服务器端脚本语言,在Web开发中占据重要地位。其垃圾回收机制包括引用计数与循环垃圾回收,对提升应用性能和稳定性至关重要。本文通过具体案例分析,详细探讨PHP垃圾回收机制的工作原理,特别是如何解决循环引用问题。在PHP 8中,垃圾回收机制得到进一步优化,提高了效率和准确性。理解这些机制有助于开发高效稳定的PHP应用。
61 3
|
4月前
|
Kubernetes API Docker
跟着iLogtail学习容器运行时与K8s下日志采集方案
iLogtail 作为开源可观测数据采集器,对 Kubernetes 环境下日志采集有着非常好的支持,本文跟随 iLogtail 的脚步,了解容器运行时与 K8s 下日志数据采集原理。
|
3月前
|
监控 网络协议 CDN
阿里云国际监控查询流量、用量查询流量与日志统计流量有差异?
阿里云国际监控查询流量、用量查询流量与日志统计流量有差异?
|
13天前
|
弹性计算 数据挖掘 应用服务中间件
阿里云轻量应用服务器68元与云服务器99元和199元区别及选择参考
目前阿里云有三款特惠云服务器,第一款轻量云服务器2核2G68元一年,第二款经济型云服务器2核2G3M带宽99元1年,第三款通用算力型2核4G5M带宽199元一年。有的新手用户并不是很清楚他们之间的区别,因此不知道如何选择。本文来介绍一下它们之间的区别以及选择参考。
271 87
|
6天前
|
存储 弹性计算 应用服务中间件
阿里云轻量应用服务器出新品通用型实例了,全球26个地域可选
近日,阿里云再度发力,推出了首款全新升级的轻量应用服务器——通用型实例。这款服务器实例不仅标配了200Mbps峰值公网带宽,更在计算、存储、网络等基础资源上进行了全面优化,旨在为中小企业和开发者提供更加轻量、易用、普惠的云计算服务,满足其对于通用计算小算力的迫切需求。目前,这款新品已在全球26个地域正式上线,为全球用户提供了更加便捷、高效的上云选择。
|
23天前
|
机器学习/深度学习 人工智能 PyTorch
阿里云GPU云服务器怎么样?产品优势、应用场景介绍与最新活动价格参考
阿里云GPU云服务器怎么样?阿里云GPU结合了GPU计算力与CPU计算力,主要应用于于深度学习、科学计算、图形可视化、视频处理多种应用场景,本文为您详细介绍阿里云GPU云服务器产品优势、应用场景以及最新活动价格。
阿里云GPU云服务器怎么样?产品优势、应用场景介绍与最新活动价格参考