一次日志请求次数统计

package  test;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.util.Map;
import java.util.TreeMap;

public class Count {

    public static void main(String[] args) throws Exception {
        File file = new File("d:/kht_d2.log");
        BufferedReader in = new BufferedReader(
                new InputStreamReader(
                        new FileInputStream(file), "UTF-8"));
        Map<String, Integer> map = read(in);
        for(String str : map.keySet()) {
            System.out.println(str + "=" + map.get(str));
        }
        in.close();
    }

    public static Map<String, Integer> read(BufferedReader in) throws Exception {
        Map<String, Integer> map = new TreeMap<String, Integer>();
        String str = null;
        int count = 0;
        while((str = in.readLine()) != null) {
            if(str.length() > 20 && (str.indexOf("") != -1 )) {
                String date = str.substring(str.indexOf(":") + 1,
                        str.indexOf(":") + 11);
                if(map.get(date) == null) {
                    count = 0;
                    map.put(date, ++count);
                } else {
                    map.put(date, ++count);
                }
            }
        }
        return map;
    }

}

说明:

这次是统计从我们平台发往其他平台的请求次数,思路就是对每一行的关键字进行验证,如果存在进行加1操作

时间: 2024-11-05 14:14:25

一次日志请求次数统计的相关文章

老男孩教育每日一题-2017年4月26日-通过访问日志access.log统计IP和每个地址访问的次数

通过访问日志access.log统计IP和每个地址访问的次数 101.226.61.184 - - [22/Nov/2015:11:02:00 +0800] "GET /mobile/sea-modules/gallery/zepto/1.1.3/zepto.js HTTP/1.1" 200 24662 "http://m.oldboyedu.com/mobile/theme/oldboyedu/home/index.html" "Mozilla/5.0 

SQL请求优化——浏览次数统计,SQL写操作稀释

引言 前几天做了这么一个东西:一个游戏中有个活动页面,活动页面有个商品,商品下面要显示该商品实浏览次数,就相当于是用户每出发一次请求这个浏览总次数都会添加一次,这个问题很简单,每次浏览的时候去数据库中进行“+1”操作即可.但是做完之后想想,由于这个浏览总次数实时性要求不是那么高,我就可以对sql请求进行稀释.减少“+1”的请求次数,这样可以减少与数据库交互时“写操作”所浪费的资源. 实现 这种特殊环境下的sql请求是这样的,每次要执行浏览次数“+1”操作时,我们产生一个1~N的随机数R,如果R%

api-gateway实践(7)新服务网关 - 网关请求监控统计

一.实时监控 用户点击服务实例,系统显示服务实例-version下的api列表, 用户点击某个api的如下两个图标 1.API请求次数监控 横轴:时间,粒度为分钟 纵轴:请求访问次数 展示:失败数(红).成功数(绿).总数(黄),[点击红色,显示失败日志列表,点击失败日志,树形展示本地的请求端到端明细日志]. 存储: 请求结束时,累计成功数到 instId_api_20171852_suc_cnt 请求结束时,累计失败数到 instId_api_20171852_err_cnt 2.API请求时

scala实战之spark用户在线时长和登录次数统计实例

接触spark后就开始学习scala语言了,因为有一点python和java的基础学习起来还行,今天在这里把我工作中应用scala编程统计分析用户行为日志的实例和大家分析一下,我这里主要讲一下用户的在线时长统计和登录次数统计算法实现过程. 第一步 编程环境:首先你得有spark安装包 你可以先不用本地安装spark,但是可以通过import spark-assembly-1.6.2-hadoop2.6.0.jar包来完成程序调试 另外需要scala的运行环境,我用的版本:scala-sdk-2.

小飞鱼通达二开 OA工作流打印次数统计控制程序(图文)

每个工作流工作打印了多少次了,在OA里不知道,如何能够控制呢,今天小飞鱼带给大家的就是这个工作量打印次数统计控制程序,使用起来是不是会方便很多. 可以查询打印日志明细. 打印页面上多了一个打印按钮和流水号.打印次数的信息. ? 点击打印按钮后,弹出打印预览界面可以进行打印.并且打印按钮消失不能重复进行打印,打印计数进行记录. 原文地址:http://blog.51cto.com/1603179/2337613

CDN的combo技术能把多个资源文件合并引用,减少请求次数

CDN的combo技术能把多个资源文件合并引用,减少请求次数.比如淘宝的写法: <link rel="stylesheet" href="//g.alicdn.com/msui/sm/0.6.2/css/??sm.min.css,sm-extend.min.css"> <script type='text/javascript' src='//g.alicdn.com/msui/sm/0.6.2/js/??sm.min.js,sm-extend.m

海量日志数据如何处理统计?

项目需要做一个dashboard图表网站,展示日志的相关统计信息.这个页面图表很多,一次性会加载出很多数据. 日志表有很多种,都是一些入侵攻击日志.恶意站点访问日志等等,需要统计出当前时间.过去24小时.过去一周被攻击主机个数.恶意站点数(这是其中两个需求)等等数据. 比如被攻击主机个数,需要查多张数据表,然后统计出这个数据. 日志存储在PostgreSQL里面,已经基于时间做了分表,但是每天的的日志量都在100W以上. 写入数据库的模式是随时从其他的系统中写入. 根据这个应用场景,如果设计这个

减少http请求次数

80%的最终用户响应时间花在前端程序上,而其大部分时间则花在各种页面元素,如图像.样式表.脚本和Flash等的下载上.减少页面元素将会减少HTTP请求次数.这是快速显示页面的关键所在. 1.Image maps组合多个图片到一张图片中.总文件大小变化不大,但减少了HTTP请求次数从而加快了页面显示速度.该方式只适合图片连续的情况:同时坐标的定义是烦人又容易出错的工作.使用CSS的background-image和background-position属性来现实所需的部分图片. 2.Combine

在ASP.NET MVC下限制同一个IP地址单位时间间隔内的请求次数

有时候,当用户请求一个Controller下的Action,我们希望,在单位时间间隔内,比如每秒,每分钟,每小时,每天,每星期,限制同一个IP地址对某个Action的请求次数.如何做呢? stefanprodan的MvcThrottle能很好地解决这个问题,以及其它类型的IP限制问题.在这里:https://github.com/stefanprodan/MvcThrottle 把项目从GitHub下载下来,在本地打开. 找到MvcThrottle类库,打开ThrottlingFilter这个类