<?
include_once("./_common.php");
include_once("$g4[path]/head.sub.php");
/*
제작 : freeimage.kr 김성대
목적 : grep 등으로 필터링한 아파치 로그를 테이블로 저장하여 분석하기 위함..
사용 : 그냥 분석하면 답없다.. 대충 필터링한다음 나온 파일을 DB에 넣은뒤
찌지고 뽁고 해서 문제점을 찾아낸다.. ^^
전부다 저장하면 하세월 걸리니 if 문으로 적당히 처리하시길..
데이타 구조
CREATE TABLE IF NOT EXISTS `ar_apache_log` (
`no` int(11) NOT NULL AUTO_INCREMENT,
`ip` varchar(15) NOT NULL,
`date` datetime NOT NULL,
`post` enum('GET','POST') NOT NULL,
`url` varchar(255) NOT NULL,
`stat` int(11) NOT NULL,
`size` int(11) NOT NULL,
PRIMARY KEY (`no`),
UNIQUE KEY `ip` (`ip`,`date`,`url`,`stat`)
) ENGINE=InnoDB DEFAULT CHARSET=euckr ;
*/
//m.access.log:211.36.138.73 - - [17/Jul/2013:16:08:15 +0900] "GET /images/ico_all.png HTTP/1.1" 200 1997 "http://viewkorea.co.kr/" "Mozilla/5.0 (Linux; U; Android 4.1.2; ko-kr; SHV-E210L Build/JZO54K) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30 NAVER(inapp; search; 220; 4.7.1)"
$buff='m.access.log:211.36.138.73 - - [17/Jul/2013:16:08:15 +0900] "GET /images/ico_all.png HTTP/1.1" 200 1997';
$reg ="(.+?):"; // 1 m.access.log
$reg.="([\d.\d.\d.\d]+) - - "; // 2 211.36.133.11
$reg.="\[(.+?)\] "; // 3 17/Jul/2013:16:08:15 +0900
$reg.="\"(.+?) "; // 4 GET
$reg.="(.+?) HTTP\/"; // 5 /images/ico_all.png
$reg.="(.+?)\" "; // 6 1.1
$reg.="(.+\d) (.+\d)"; // 7 200 8 1997
//$reg.="( (.+?)"; // 8 1.1
//$reg.="\"(.+?)\" "; // 9
//$reg.="\"(.+?)\""; // 9
$g4[ar_log_table]="ar_apache_log";
//로그 파일은 여기에.. 지정
$fp=fopen("../../lo2","r");
$line=0;
echo "<xmp>";
while($buff=fgets($fp)) {
$line++;
//echo "$buff\n";
preg_match("/$reg/",$buff,$match);
$date=date("Y-m-d H:i:s",strtotime($match[3]));
//저장할 날짜범위 지정
if ($date<='2013-01-31 00:00:00') continue;
if ($date>='2013-08-31 00:00:00') continue;
//var_dump($match);
$sql="insert into $g4[ar_log_table] set
ip='$match[2]',
date='$date',
post='$match[4]',
url='$match[5]',
stat='$match[7]',
size='$match[8]'";
if ($line%1000==0) {
echo "$line. $sql \n";
}
sql_query($sql,false);
//if (mysql_error()) echo mysql_error(),"\n";
//if ($line>10) break;
}
fclose($fp);
?>
전국 추천 여행 전문 검색 뷰코리아 방문해주세요.. viewkorea.co.kr 굽신굽신~~
include_once("./_common.php");
include_once("$g4[path]/head.sub.php");
/*
제작 : freeimage.kr 김성대
목적 : grep 등으로 필터링한 아파치 로그를 테이블로 저장하여 분석하기 위함..
사용 : 그냥 분석하면 답없다.. 대충 필터링한다음 나온 파일을 DB에 넣은뒤
찌지고 뽁고 해서 문제점을 찾아낸다.. ^^
전부다 저장하면 하세월 걸리니 if 문으로 적당히 처리하시길..
데이타 구조
CREATE TABLE IF NOT EXISTS `ar_apache_log` (
`no` int(11) NOT NULL AUTO_INCREMENT,
`ip` varchar(15) NOT NULL,
`date` datetime NOT NULL,
`post` enum('GET','POST') NOT NULL,
`url` varchar(255) NOT NULL,
`stat` int(11) NOT NULL,
`size` int(11) NOT NULL,
PRIMARY KEY (`no`),
UNIQUE KEY `ip` (`ip`,`date`,`url`,`stat`)
) ENGINE=InnoDB DEFAULT CHARSET=euckr ;
*/
//m.access.log:211.36.138.73 - - [17/Jul/2013:16:08:15 +0900] "GET /images/ico_all.png HTTP/1.1" 200 1997 "http://viewkorea.co.kr/" "Mozilla/5.0 (Linux; U; Android 4.1.2; ko-kr; SHV-E210L Build/JZO54K) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30 NAVER(inapp; search; 220; 4.7.1)"
$buff='m.access.log:211.36.138.73 - - [17/Jul/2013:16:08:15 +0900] "GET /images/ico_all.png HTTP/1.1" 200 1997';
$reg ="(.+?):"; // 1 m.access.log
$reg.="([\d.\d.\d.\d]+) - - "; // 2 211.36.133.11
$reg.="\[(.+?)\] "; // 3 17/Jul/2013:16:08:15 +0900
$reg.="\"(.+?) "; // 4 GET
$reg.="(.+?) HTTP\/"; // 5 /images/ico_all.png
$reg.="(.+?)\" "; // 6 1.1
$reg.="(.+\d) (.+\d)"; // 7 200 8 1997
//$reg.="( (.+?)"; // 8 1.1
//$reg.="\"(.+?)\" "; // 9
//$reg.="\"(.+?)\""; // 9
$g4[ar_log_table]="ar_apache_log";
//로그 파일은 여기에.. 지정
$fp=fopen("../../lo2","r");
$line=0;
echo "<xmp>";
while($buff=fgets($fp)) {
$line++;
//echo "$buff\n";
preg_match("/$reg/",$buff,$match);
$date=date("Y-m-d H:i:s",strtotime($match[3]));
//저장할 날짜범위 지정
if ($date<='2013-01-31 00:00:00') continue;
if ($date>='2013-08-31 00:00:00') continue;
//var_dump($match);
$sql="insert into $g4[ar_log_table] set
ip='$match[2]',
date='$date',
post='$match[4]',
url='$match[5]',
stat='$match[7]',
size='$match[8]'";
if ($line%1000==0) {
echo "$line. $sql \n";
}
sql_query($sql,false);
//if (mysql_error()) echo mysql_error(),"\n";
//if ($line>10) break;
}
fclose($fp);
?>
전국 추천 여행 전문 검색 뷰코리아 방문해주세요.. viewkorea.co.kr 굽신굽신~~
첨부파일
a1.php (2.4 KB, 14회)댓글 4개
게시글 목록
| 번호 | 제목 |
|---|---|
| 32458 | |
| 32438 | |
| 32437 | |
| 32436 | |
| 32427 | |
| 32416 | |
| 32411 | |
| 32404 | |
| 32396 | |
| 32377 | |
| 32366 | |
| 32360 | |
| 32331 | |
| 32322 | |
| 32319 | |
| 32314 | |
| 32298 | |
| 32297 | |
| 32287 | |
| 32282 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기