Zero_To_One 2022. 2. 11. 14:15

https://websecurity.tistory.com/80

 

리눅스(Linux) sort/uniq 명령어

sort sort 명령은 사용자가 지정한 파일의 내용을 정렬하거나, 정렬된 파일의 내용을 병합(Merge)할 때 사용할 수 있다. > sort [-옵션] [-o 저장될 파일명] 정렬할 파일명 [-m 병합할 파일명....]  옵션  

websecurity.tistory.com

https://m.blog.naver.com/kibani/220963537520

 

[Linux 팁] grep, awk를 이용한 access로그 통계 추출하기

  Linux 서버를 운영하다 보면, 아파치 또는 톰캣의 Access로그를 이용하여, 접속 통계를 추출하고자 할 ...

blog.naver.com

sort

- 말 그대로 내용을 정렬 해준다. 기본 정렬 방식은 작은것 부터 큰순으로(오름차순) 정렬된다.

-r 또는 --reserse옵션 : 내림차순 정렬

 

uniq -c

- uniq는 중복을 제거해주는 옵션이다. 

-c 또는 --count 옵션 : 중복을 제거하면서 각 내용이 몇 번 등장했는지 카운팅을 해준다.

 

 

 

access_log 라인 분석

access_log 에 남겨지는 기록의 형식이다. ---------------------------------------------------------------------------------------------- 211.211.211.111 - - [21/Aug/2009:09:23:46 +0900] "GET /line/dom..

superad.tistory.com

 

access.log 로 아파치 에러(결과) 코드 분석해보기

1. 확인

head access.log.txt

2. 분석

83.149.9.216 - - [17/May/2015:10:05:03 +0000] "GET /presentations/logstash-monitorama-2013/images/kibana-search.png HTTP/1.1" 200 203023 "http://semicomplete.com/presentations/logstash-monitorama-2013/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.77 Safari/537.36"
83.149.9.216 - - [17/May/2015:10:05:43 +0000] "GET /presentations/logstash-monitorama-2013/images/kibana-dashboard3.png HTTP/1.1" 200 171717 "http://semicomplete.com/presentations/logstash-monitorama-2013/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.77 Safari/537.36"
83.149.9.216 - - [17/May/2015:10:05:47 +0000] "GET /presentations/logstash-monitorama-2013/plugin/highlight/highlight.js HTTP/1.1" 200 26185 "http://semicomplete.com/presentations/logstash-monitorama-2013/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.77 Safari/537.36"
83.149.9.216 - - [17/May/2015:10:05:12 +0000] "GET /presentations/logstash-monitorama-2013/plugin/zoom-js/zoom.js HTTP/1.1" 200 7697 "http://semicomplete.com/presentations/logstash-monitorama-2013/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.77 Safari/537.36"
83.149.9.216 - - [17/May/2015:10:05:07 +0000] "GET /presentations/logstash-monitorama-2013/plugin/notes/notes.js HTTP/1.1" 200 2892 "http://semicomplete.com/presentations/logstash-monitorama-2013/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.77 Safari/537.36"
83.149.9.216 - - [17/May/2015:10:05:34 +0000] "GET /presentations/logstash-monitorama-2013/images/sad-medic.png HTTP/1.1" 200 430406 "http://semicomplete.com/presentations/logstash-monitorama-2013/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.77 Safari/537.36"
83.149.9.216 - - [17/May/2015:10:05:57 +0000] "GET /presentations/logstash-monitorama-2013/css/fonts/Roboto-Bold.ttf HTTP/1.1" 200 38720 "http://semicomplete.com/presentations/logstash-monitorama-2013/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.77 Safari/537.36"
83.149.9.216 - - [17/May/2015:10:05:50 +0000] "GET /presentations/logstash-monitorama-2013/css/fonts/Roboto-Regular.ttf HTTP/1.1" 200 41820 "http://semicomplete.com/presentations/logstash-monitorama-2013/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.77 Safari/537.36"
83.149.9.216 - - [17/May/2015:10:05:24 +0000] "GET /presentations/logstash-monitorama-2013/images/frontend-response-codes.png HTTP/1.1" 200 52878 "http://semicomplete.com/presentations/logstash-monitorama-2013/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.77 Safari/537.36"
83.149.9.216 - - [17/May/2015:10:05:50 +0000] "GET /presentations/logstash-monitorama-2013/images/kibana-dashboard.png HTTP/1.1" 200 321631 "http://semicomplete.com/presentations/logstash-monitorama-2013/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.77 Safari/537.36"

83.149.9.216 : 원격지호스트 IP

[17/May/2015:10:05:03 +0000] : 요청시간

GET /presentations/logstash-monitorama-2013/images/kibana-search.png HTTP/1.1 : 요청한 주소

200 : 결과코드

203023 : 헤드를 제외한 전송량 (byte)

 

3. 결과코드 (참조)

https://superad.tistory.com/56

 

access_log 라인 분석

access_log 에 남겨지는 기록의 형식이다. ---------------------------------------------------------------------------------------------- 211.211.211.111 - - [21/Aug/2009:09:23:46 +0900] "GET /line/dom..

superad.tistory.com

4. 에러(결과)코드만 뽑아보기

$ cat access.log.txt | awk '{print $9}' | awk -F "/" '{arr[$1]+=1} END {for (i in arr) {print i "\t" ":" arr[i]}}' | sort

cat으로 access.log.txt 열기

awk로 9번째 필드인 결과코드를 추출하여 해당필드가 같은 데이터면 count를 1씩 증가

그 결과를 for loop 돌면서 [필드 값(탭) : count 값] 형태로 출력하고 이를 첫번째 필드 기준으로 정렬

 

5. 실행결과

jaehyeok@jaehyeok-Inspiron-15-5510:~$ cat sample.txt
200	:9126
206	:45
301	:164
304	:445
403	:2
404	:213
416	:2
500	:3