📄 doread.jsp.svn-base
字号:
<%@ page language="java" contentType="text/html" pageEncoding="gb2312"%>
<%@page import="java.io.*"%>
<%@page import="java.util.*"%>
<%@page import="java.text.*"%>
<%@page import="db.Transferdate;"%>
<html>
<head>
<title>read</title>
</head>
<body>
<% //定义分析元素
String ip = "";//IP
String shijian = "";//时间
String fangfa = "";//表单提交方式
String url = ""; //URL
String http = "";//HTTP协议版本
String zhuangtai = "";//状态
String daxiao = "";//大小
String url3="";
String iptemp="";//ip临时存储
String jspurltemp="";//url临时存储
String fgwnwtemp="";//发改委内网url临时存储
//url类别临时存储
String xxzltemp="";
String xtdwtemp="";
String wgzdttemp="";
String pfwtemp="";
String mrywtemp="";
String pmtemp="";
String ddjstemp="";
String elsetemp="";
String failreadurl404="";//页面状态404错误访问url
String failreadurl500="";//页面状态500错误访问url
String failreadurl501="";//页面状态501错误访问url
String failreadurl503="";//页面状态503错误访问url
String failreadurl505="";//页面状态505错误访问url
String failreadurl302="";
String failreadurl304="";
String failreadurl200="";
int xxzlnum=0;//信息资料
int xtdwnum=0;//系统单位
int wgzdtnum=0;//委工作动态
int pfwnum=0;//普发文
int mrywnum=0;//每日要闻
int pmnum=0;//互动留言
int ddjsnum=0;//党的建设
int elsenum=0;//其他
int jspnum=0; //jsp页面点击数
int picnum=0; //图片读取数
int fgwnwnum=0; //发改委内网页面点击数
int failread200=0;//页面状态200访问
int failread404=0;//页面状态404访问
int failread500=0;//页面状态500访问
int failread501=0;//页面状态501访问
int failread503=0;//页面状态503访问
int failread505=0;//页面状态505访问
int failread302=0;//页面状态302访问
int failread304=0;//页面状态304访问
int ipnum=0; //用户数
//同一时间段访问数量
int timenum0to1=0; int timenum1to2=0;
int timenum2to3=0; int timenum3to4=0;
int timenum4to5=0; int timenum5to6=0;
int timenum6to7=0; int timenum7to8=0;
int timenum8to9=0; int timenum9to10=0;
int timenum10to11=0; int timenum11to12=0;
int timenum12to13=0; int timenum13to14=0;
int timenum14to15=0; int timenum15to16=0;
int timenum16to17=0; int timenum17to18=0;
int timenum18to19=0; int timenum19to20=0;
int timenum20to21=0; int timenum21to22=0;
int timenum22to23=0; int timenum23to24=0;
//时间段
String time0="00:00 - 00:59"; String time1="01:00 - 01:59";
String time2="02:00 - 02:59"; String time3="03:00 - 03:59";
String time4="04:00 - 04:59"; String time5="05:00 - 05:59";
String time6="06:00 - 06:59"; String time7="07:00 - 07:59";
String time8="08:00 - 08:59"; String time9="09:00 - 09:59";
String time10="10:00 - 10:59"; String time11="11:00 - 11:59";
String time12="12:00 - 12:59"; String time13="13:00 - 13:59";
String time14="14:00 - 14:59"; String time15="15:00 - 15:59";
String time16="16:00 - 16:59"; String time17="17:00 - 17:59";
String time18="18:00 - 18:59"; String time19="19:00 - 19:59";
String time20="20:00 - 20:59"; String time21="21:00 - 21:59";
String time22="22:00 - 22:59"; String time23="23:00 - 23:59";
String busytime="";//访问率最高的时段
String shijianstrtime="";
%>
<%//得到文件全路径
String exceptdirs=(String)session.getAttribute("exceptdirs");
String dirs=(String)session.getAttribute("dirs");
String[] dirsarr=dirs.split("----");
String[] exedirsarr=null;
if(exceptdirs!=""){
exedirsarr=exceptdirs.split("-");
}
//获取每个文件日期
List dirlist=new ArrayList();
for (int i=0;i<dirsarr.length;i++){
String dirstr=dirsarr[i].toString().trim();
String[] dirarrtemp=dirstr.split("\\.");
String dirstrtime=dirarrtemp[1];
dirlist.add(dirstrtime.substring(0,dirstrtime.length()));
}
int filenum=dirlist.size();
int countjspnum[]=new int[filenum];
int countddjsnum[]=new int[filenum];
int countelsenum[]=new int[filenum];
int countfgwnum[]=new int[filenum];
int countmrywnum[]=new int[filenum];
int countpfwnum[]=new int[filenum];
int countpmnum[]=new int[filenum];
int countwgzdtnum[]=new int[filenum];
int countxtdwnum[]=new int[filenum];
int countxxzlnum[]=new int[filenum];
String records;//日志记录
List newrecords=new ArrayList();
List timerecords=new ArrayList();
List fgwrecords=new ArrayList();
List jsprecords=new ArrayList();
List iprecords=new ArrayList();
List xxzl=new ArrayList();
List xtdw=new ArrayList();
List wgzdt=new ArrayList();
List pfw=new ArrayList();
List mryw=new ArrayList();
List pm=new ArrayList();
List ddjs=new ArrayList();
List elserecords=new ArrayList();
int n=0;
//逐行输出所选文件所有行存入list
for (int t=0;t<dirsarr.length;t++){
String str=dirsarr[t].toString();
str = new String(str.getBytes("ISO-8859-1"),"gb2312");
InputStream in=new FileInputStream(str);
BufferedReader br = new BufferedReader(new InputStreamReader(in));
String record = br.readLine();
while(record != null){
int bijiao=0;
if(exedirsarr!=null){
for(int y=0;y<exedirsarr.length;y++){
if(record.substring(0,record.length()).indexOf(exedirsarr[y])!=-1){
bijiao=bijiao+1;
}
}
if(bijiao==0){
newrecords.add(record.substring(0,record.length()));
}
}
else{
newrecords.add(record.substring(0,record.length()));
}
record=br.readLine();
}
in.close();
}
Collections.sort(newrecords);
//按照字符串固定格式进行截取所需字符串
for(int i = 0;i<newrecords.size();i++){
records=newrecords.get(i).toString();
ip = records.substring(0,records.indexOf(" "));
String N = records.substring(records.indexOf(" ")+1);//除去第1段字符剩下的字符
String N2 = N.substring(N.indexOf(" ")+1);//除去第1段字符剩下的字符
String N4 = N2.substring(N2.indexOf(" ")+1);//除去第1段字符剩下的字符
shijian = N4.substring(1,N4.indexOf(" "));//第4段字符(时间)
String N6 = N4.substring(N4.indexOf(" ")+1);//除去第1段字符剩下的字符
String N8 = N6.substring(N6.indexOf(" ")+1);//除去第1段字符剩下的字符
fangfa = N8.substring(1,N8.indexOf(" ")+1);//第6段字符(方法)
String N10 = N8.substring(N8.indexOf(" ")+1);//除去第1段字符剩下的字符
url = N10.substring(0,N10.indexOf(" "));//第7段字符(URL)
//取url后三位
if(url.length() > 3){
url3 = url.substring(url.length()-4,url.length());
}else {
url3="";
}
String N12 = N10.substring(N10.indexOf(" ")+1);//除去第1段字符剩下的字符
http = N12.substring(0,N12.indexOf(" ")+1); //第8段字符(HTTP)
String N14 = N12.substring(N12.indexOf(" ")+1);//除去第1段字符剩下的字符
zhuangtai = N14.substring(0,N14.indexOf(" ")+1);//第9段字符 {状态}
String N16 = N14.substring(N14.indexOf(" ")+1);//除去第1段字符剩下的字符
daxiao = N16.substring(N16.lastIndexOf(" ")+1); //第10段字符{大小}
shijianstrtime=shijian.toString();
Transferdate td=new Transferdate();
String datetime=td.Transferdate(shijianstrtime);
//计算图片页面访问
if(url3.indexOf("gif")!=-1){
picnum=picnum+1;
}else if (url3.indexOf("jpg")!=-1){
picnum=picnum+1;
}else if(url3.indexOf("swf")!=-1){
picnum=picnum+1;
}else if(url3.indexOf("png")!=-1){
picnum=picnum+1;
}
//比较ip,计算用户数,并记录ip
if (iptemp.indexOf(ip)==-1){
iptemp=iptemp+ip.toString()+"--";
ipnum=ipnum+1;
}
//计算全部页面访问
if(url3.indexOf("jsp")!=-1 || url3.indexOf("do")!=-1 || url3.indexOf("htm")!=-1
|| url3.indexOf("html")!=-1 || url3.indexOf("ws")!=-1){
if(url3.indexOf("doc")==-1){
jspnum=jspnum+1;
jsprecords.add(url.toString());
timerecords.add(shijianstrtime);
for(int x=0;x<dirlist.size();x++){
if(datetime.equals(dirlist.get(x))){
countjspnum[x]=countjspnum[x]+1;
}
}
if (jspurltemp.indexOf(url)==-1){
jspurltemp=jspurltemp+url.toString()+"--";
}
//统计时间段访问数量
shijianstrtime=shijian.toString();
shijianstrtime = shijianstrtime.substring(shijianstrtime.length()-9,shijianstrtime.length());
shijianstrtime = shijianstrtime.substring(1,3);
if(shijianstrtime.indexOf("00")!=-1){
timenum0to1=timenum0to1+1;
}
if(shijianstrtime.indexOf("01")!=-1){
timenum1to2=timenum1to2+1;
}
if(shijianstrtime.indexOf("02")!=-1){
timenum2to3=timenum2to3+1;
}
if(shijianstrtime.indexOf("03")!=-1){
timenum3to4=timenum3to4+1;
}
if(shijianstrtime.indexOf("04")!=-1){
timenum4to5=timenum4to5+1;
}
if(shijianstrtime.indexOf("05")!=-1){
timenum5to6=timenum5to6+1;
}
if(shijianstrtime.indexOf("06")!=-1){
timenum6to7=timenum6to7+1;
}
if(shijianstrtime.indexOf("07")!=-1){
timenum7to8=timenum7to8+1;
}
if(shijianstrtime.indexOf("08")!=-1){
timenum8to9=timenum8to9+1;
}
if(shijianstrtime.indexOf("09")!=-1){
timenum9to10=timenum9to10+1;
}
if(shijianstrtime.indexOf("10")!=-1){
timenum10to11=timenum10to11+1;
}
if(shijianstrtime.indexOf("11")!=-1){
timenum11to12=timenum11to12+1;
}
if(shijianstrtime.indexOf("12")!=-1){
timenum12to13=timenum12to13+1;
}
if(shijianstrtime.indexOf("13")!=-1){
timenum13to14=timenum13to14+1;
}
if(shijianstrtime.indexOf("14")!=-1){
timenum14to15=timenum14to15+1;
}
if(shijianstrtime.indexOf("15")!=-1){
timenum15to16=timenum15to16+1;
}
if(shijianstrtime.indexOf("16")!=-1){
timenum16to17=timenum16to17+1;
}
if(shijianstrtime.indexOf("17")!=-1){
timenum17to18=timenum17to18+1;
}
if(shijianstrtime.indexOf("18")!=-1){
timenum18to19=timenum18to19+1;
}
if(shijianstrtime.indexOf("19")!=-1){
timenum19to20=timenum19to20+1;
}
if(shijianstrtime.indexOf("20")!=-1){
timenum20to21=timenum20to21+1;
}
if(shijianstrtime.indexOf("21")!=-1){
timenum21to22=timenum21to22+1;
}
if(shijianstrtime.indexOf("22")!=-1){
timenum22to23=timenum22to23+1;
}
if(shijianstrtime.indexOf("23")!=-1){
timenum23to24=timenum23to24+1;
}
if (url.indexOf("/fgwnw/")!=-1){
fgwnwnum=fgwnwnum+1;
fgwrecords.add(url.toString());
for(int x=0;x<dirlist.size();x++){
if(datetime.equals(dirlist.get(x))){
countfgwnum[x]=countfgwnum[x]+1;
}
}
if (fgwnwtemp.indexOf(url)==-1){
fgwnwtemp=fgwnwtemp+url.toString()+"--";
}
}
}
}
//按照url类别统计访问资源
if(url3.indexOf("jsp")!=-1 || url3.indexOf("do")!=-1 || url3.indexOf("htm")!=-1
|| url3.indexOf("html")!=-1 || url3.indexOf("ws")!=-1){
if(url3.indexOf("doc")==-1){
if (url.indexOf("/fgwnw/xxzl")!=-1){
xxzlnum=xxzlnum+1;
xxzl.add(url.toString());
for(int x=0;x<dirlist.size();x++){
if(datetime.equals(dirlist.get(x))){
countxxzlnum[x]=countxxzlnum[x]+1;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -