日志分析一

Posted 曹军

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了日志分析一相关的知识,希望对你有一定的参考价值。

1.需求分析

  分析指标

    pv  uv  登录人数  游客人数  平均访问时间  二跳率  独立IP

 

2.使用的日志(一号店),会话信息

  

 

3.创建数据库

  

 

4.创建源表,存储源数据

  

 

5.创建我们需要的use表

  

 

6.创建两张临时表

  一张临时表可以根据sessionId得到的字段。

  第二张临时表是原表的过滤。

  思路:当第一张表的min_trackTime与第二张表的trackTime进行join,则这个时候的trackU,url,referer都是最小时间对应的值。

  

 

 7.join出想要的结果

  

 

8.完成需求

  

 

9.结果(使用beeline客户端显示)

  

 

10.疑问:

  visit_user的求解。

  count(distinct case when user_id is null then guid else null end) visit_user

  上面的使用方式是有问题的,没有登录的时候,user_id不是空,是别的值,所以都统计了,就造成了与UV相同。

  具体是啥?是空白符,但是要怎么做呢?

  可以统计长度。

  count(distinct case when length(user_id)!=0 then guid else null end) login_user;

   count(distinct case when length(user_id)=0 then guid else null end) visit_user;

 

以上是关于日志分析一的主要内容,如果未能解决你的问题,请参考以下文章

JVM之GC日志分析与对象内存分配回收策略

apache中部署rotatelogs日志分割和awstats日志分析

ELK日志分析系统

Hadoop学习笔记—20.网站日志分析项目案例统计分析

持续更新—Nginx日志分析方法

日志分析(一)