可视化分析 web 访问日志
内容目录
- Python 基础
- 使用模块介绍
- 可视化组件 echarts 介绍
- Web 访问日志
- 代码解读
讲师:KK
多语言混搭开发工程师,多年 PHP、Python 项目开发经验,曾就职 360、绿盟科技,7年工作经验。擅长于 Web 安全开发、性能优化、分布式应用开发&设计等多方面,51Reboot 金牌讲师。
Python 基础
- 数值、字符串、列表、字典、文件的使用
- with 关键字使用
- 函数、lambda 函数、sorted
- 时间类型转化
时间类型转化

统计 list 中每个元素出现的次数
languages = ['python', 'java', 'python', 'c', 'c++', 'go', 'c#', 'c++', 'lisp', 'c', 'javascript', 'java', 'python', 'matlab', 'python', 'go', 'java']

常用模块
- os/os.path 系统/文件路径操作
-os.mkdir/os.rmdir/os.unlink/os.listdir
-os.path.join/os.path.abspath/os.path.dirname/os.path.exists
- argparse 命令行参数解析
-add_argument(short_name, full_name, type, desc, default, help, choices, nargs, action)
- shutil 文件/文件夹操作
-shutil.copy2/shutil.copytree/shutil.rmtree
- logging 日志记录
-logging.basicConfig(level, format, filename, filemode)
-https://www.jianshu.com/p/4a801f61ecda
- jinja2 模板引擎,用于根据模板生成文件
-使用步骤(3步走)
-创建加载器
-获取模板
-渲染
-模板语言
-打印变量
-流程控制(条件、循环)
-过滤器
-模板继承
- geoip2 用于 maxmind 二进制库 mmdb 查询
-打开文件
-获取 ip 信息(国家、城市、地理位置等)
-关闭文件
可视化组件 echarts 介绍
- 项目地址:http://echarts.baidu.com/echarts2/
- 项目介绍:可视化JS组件
- 目前主要版本:2.0 & 3.0
- 使用步骤(3 + 3):http://echarts.baidu.com/echarts2/doc/start.html
- 常用图形
-饼状图
-曲线图
-柱状图
-仪表盘
-地图
-K 线图
-…
Web 访问日志
- Web 访问日志是 web 服务器记录的网站被访问的过程日志
- 日志属性
-什么时候
-什么人
-通过什么工具
-以什么方式
-访问了什么资源
-结果是什么(状态/返回数据大小)
- 每天的点击量、总点击数量
-每天的日志行数、日志的总行数(每天的日志行数之和)
- 每天的浏览者数量、总浏览者数量
-每天的不重复的 IP 的数量
-总的不重复的 IP 数量(每天不重复的 IP 数量之和???)
- 发生错误的请求有多少次,状态码分布情况
-每种状态码出现的次数
- 每天流量大小
-每天的日志中每行流量之和
-总的流量之和(每天流量之和)
- 访问地域分布
-根据 IP 获取地理位置
- 发生访问次数最多 TOP N IP 列表
- 通用日志的格式

- 组合日志格式
-127.0.0.1 - - [14/May/2017:12:51:13 +0800] "GET /index.html HTTP/1.1" 200 4286 "http://127.0.0.1/" "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.116 Safari/537.36“
远程主机 IP - - 请求时间 时区 方法 资源 协议 状态码 发送字节 referer 字符 浏览器信息
一些重点代码的解读
- 程序入口

- 主程序

- 每天统计项

- 总统计项

- 模板页面(显示内容)

- 模板页面(echart)

- 模板页面(控制流程)

更多项目代码分享结束后资料一并分享给大家。
本次分享时间:2018-11-08
21:00-22:00
报名方式:扫码添加小助手备注:公开课 来源:博客园,会拉入直播分享群
提示:51Reboot Python 零基础入门课程正在火热招生。
可视化分析 web 访问日志的更多相关文章
- 机器数据的价值 - Web 访问日志和数据库审计日志
计算机数据 大量的数据流,不断增长的来源,蕴含着巨大的价值 在 Splunk,我们大量谈及计算机数据.这些数据是指在数据中心.“物联网”和互联设备世界中运行的所有系统产生的数据.其中包括支撑组织的应用 ...
- 采集并分析Nginx访问日志
日志服务支持通过数据接入向导配置采集Nginx日志,并自动创建索引和Nginx日志仪表盘,帮助您快速采集并分析Nginx日志. 许多个人站长选取了Nginx作为服务器搭建网站,在对网站访问情况进行分析 ...
- Python基础(三):简化除法判断、分析apache访问日志、扫描存活主机、利用多线程实现ssh并发访问
一.简化除法判断 目标: 编写mydiv.py脚本,主要要求如下: 提示用户输入一个数字作为除数 如果用户按下Ctrl+C或Ctrl+D则退出程序 如果用户输入非数字字符,提示用户应该输入数字 如果用 ...
- 利用GoAccess分析Nginx访问日志
原文链接:https://blog.csdn.net/yown/article/details/56027112 需求:及时得到线上用户访问日志分析统计结果,以便给开发.测试.运维.运营人员提供决策! ...
- 使用hive分析nginx访问日志方法
以下案例是使用hive分析nginx的访问日志案例,其中字段分隔通过正则表达式匹配,具体步骤如下: 日志格式: 192.168.5.139 - - [08/Jun/2017:17:09:12 +080 ...
- 命令分析nginx访问日志的用法
awk分析日志常用高级使用命令方法 分析访问日志(Nginx为例) 日志格式: '$remote_addr - $remote_user [$time_local] "$request&qu ...
- Centos下Nginx配置WEB访问日志并结合shell脚本定时切割
在一个成熟的WEB系统里,没有日志管理是不可以的,有了日志,可以帮助你得到用户地域来源.跳转来源.使用终端.某个URL访问量等相关信息:通过错误日志,你可以得到系统某个服务或server的性能瓶颈等. ...
- python脚本分析nginx访问日志
日志格式如下: 223.74.135.248 [11/May/2017:11:19:47 +0800] "POST /login/getValidateCode HTTP/1.1" ...
- 统计web 访问日志的请求数据
tomcat日志格式 在配置文件 server.xml 中,具体参照官方文档 https://tomcat.apache.org/tomcat-8.0-doc/config/valve.html#A ...
随机推荐
- 4-urllib库添加代理,添加请求头格式 模板
urllib 库设置代理的方法 案例如下:
- 【转】【Flex】FLEX 学习网站分享
[转:http://hi.baidu.com/tanghecaiyu/item/d662fbd7f5fbe02c38f6f764 ] FLEX 学习网站分享 http://blog.minidx.co ...
- 【C#】#100 调用摄像头
需求:由于项目需要获得用户的头像,所以需要用C#调用摄像头获取头像. 下面写一个调用摄像头的方法 案例:调用摄像头的一个DEMO[效果图] 使用的类库:AForge.dll [Demo下载,Dem ...
- 【教程】【FLEX】#005 拖动
在Flex中,组件的拖动分为: 1. 加强型(即本身就可以拖动设置是否可以拖动的属 [dragEnabled ,dropEnabled ] 即可) 2. 非加强型(可以通过DragManager,Dr ...
- PHP设计模式系列 - 外观模式
外观模式 通过在必需的逻辑和方法的集合前创建简单的外观接口,外观设计模式隐藏了调用对象的复杂性. 外观设计模式和建造者模式非常相似,建造者模式一般是简化对象的调用的复杂性,外观模式一般是简化含有很多逻 ...
- Keepalived 实现双机热备
原理 首先有一个虚拟ip暴露给客户端,虚拟ip对应的mac地址为一台真实服务器, 即用户向虚拟ip发送一个请求,该请求会被分发到真实服务器上. 现在有2台真实服务器,一台master,一台backup ...
- MySQL复制(二)Master-Slave复制实践
1. 准备工作 首先要准备2台机器,分别安装mysql 我这里的版本是5.1.73,mysql数据库安装请参考:http://www.cnblogs.com/tangyanbo/p/4289753.h ...
- 七:Java之封装、抽象、多态和继承
本文章介绍了关于Java中的面向对象封装.抽象.继承.多态特点 Java面向对象主要有四大特性:封装.抽象.继承和多态. 一.封装 封装就是将抽象得到的数据和行为(或功能)相结合,形成一个有机的总体, ...
- 1562. [NOI2009]变换序列【二分图】
Description Input Output Sample Input 5 1 1 2 2 1 Sample Output 1 2 4 0 3 HINT 30%的数据中N≤50: 60%的数据中N ...
- jenkins权限配置
1. 授权匿名账户权限 2 注册新用户,并且把匿名权限删除,添加用户权限 Overall(全局) Credentials(凭证) Slave(节点) Job(任务) View(视图) Administ ...