zoukankan      html  css  js  c++  java
  • 通过日志过滤的方法,统计每天内容详情页面的PV数

    1、目的:

    每天凌晨0点1分统计用户点击进入内容详情页的次数,对内容点击量形成榜单。

    2、分析:

    A、/data/log/epg.access.log日志实时打印用户访问页面的日志,并且每天凌晨0点会进行日志切割,将前一天的日志保存为epg.access.log_YYYYMMDD。

    B、分析日志发现:用户进入详情页时,/data/log/epg.access.log日志会打印含series_detail.jsp的信息,且内容ID打印在该串信息中的第71位至102位。

    C、根据内容ID的点击量从大到小统计排序,输出一个文本文件。

    3、脚本实现

     1 #!/bin/bash
     2 
     3 log_path="/data/log/"
     4 src_ser="epg.access.log"
     5 output_ser="PV"
     6 date_str=`date +%Y%m%d -d '-1 days'`
     7 dst_file=${src_ser}_${date_str}
     8 outputfile=${output_ser}_${date_str}
     9 cd $log_path
    10 awk '{print $11}' $dst_file |grep 'series_detail.jsp' |cut -c71-102 |sort|uniq -c|sort -nr >> $outputfile    

     脚本中的第10行是本文重点:

    awk '{print $11}':以默认的空格为分隔符,打印第11个字符串内容;
    cut -c71-102:截取第71位至第102位字符;
    sort|uniq -c:sort和uniq结合使用,对文件内容先进行排序,然后进行去重并计数(计数值显示在最左边);
    sort -nr:参数n为依照数值的大小排序,参数r为以相反的顺序来排序(即从大到小)。

    4、截图

    原日志截图:

     

    输出文件截图(第一列为点击量,第二列为内容ID):

     

  • 相关阅读:
    2020 CCPC Wannafly Winter Camp Day2 E阔力梯的树(树上启发式合并)
    牛客练习赛73D 离别(线段树)
    从零开始部署图书管理系统
    linux下安装nginx(编译安装)及反向代理及负载均衡
    linux下MariaDB安装
    linux下virtualenvwrapper安装
    linux下安装虚拟环境
    linux下安装django2.2
    linux下安装nginx(yum源安装)
    linux系统优化命令--day03
  • 原文地址:https://www.cnblogs.com/wenquanli/p/9716986.html
Copyright © 2011-2022 走看看