리눅스, 자료실, 성경검색, 추억의게임, 고전게임, 오락실게임, rootman, http://www.rootman.co.kr
* 3.234.214.113 *
| Home | Profile | Linux | 자료실 | zabbix | Mysql 5.6 | 갤러리 | 성경검색 | 해피니스 | 자유게시판 | 게시물검색 | L | O | R |    

 
[Shell] [squid] proxy 서버의 캐시 데이터 추출
 작성자 : rootman
Date : 2010-03-24 08:34  |  Hit : 6,290  


zabbix로 모니터링하기 위해 그래프를 생성하기 위한 몇 몇 가지 지표값 추출 스크립트입니다.

squid cache, squid_requests, squid_traffic 그래프를 생성하기 위한 개별 데이터 추출 정보입니다.


[[email protected] ~/bin]# cat -n checksquid.sh
1 #!/bin/sh
2 # DATE : 2010/03/04
3 # Writer : JeongChanHo<</FONT>[email protected]>
4 #
http://www.rootman.co.kr
5 # FileName : CheckInterval.sh
6 #-------------------------------------
7 PATH=/usr/sbin/:$PATH
8 export PATH
9
10 # squid_cache --> Maximun, Current
11 # squid_requests --> requests, hits, errors
12 # squid_traffic --> kbytes_in, kbytes_out, hit_kbytes_out
13
14 ret=$3
15
16 Uid=$1
17 Upass=$2
18 RepArg="mgr:info";
19
20
21
22 if [ $# -ne 3 ];
23 then
24 echo -e "\\nUsage : $0 UserID UserPass [Current/Maximum/requests/hits/errors/kbytes_in/kbytes_out/hit_kbytes_out]\\r\\n"
25 exit 404;
26 fi;
27
28 if [ $ret == "Current" ];
29 then
30 rst=`squidclient -p 80 -U $Uid -W $Upass $RepArg |grep "Storage Swap size"|sed -e 's/KB//g' | awk -F":" 'gsub(" ","") {print $2}'`
31 elif [ $ret == "Maximum" ];
32 then
33 rst=`squidclient -p 80 -U $Uid -W $Upass $RepArg |grep "Maximum number of file descriptors" | awk -F":" 'gsub(" ","") {print $2*1000}'`;
34 elif [ $ret == "requests" ];
35 then
36 rst=`squidclient -p 80 -U $Uid -W $Upass $RepArg |grep "Number of HTTP requests received" | awk -F":" 'gsub(" ","") {print $2}'`;
37 elif [ $ret == "hits" ];
38 then
39 rst=`squidclient -p 80 -U $Uid -W $Upass $RepArg cache_object://localhost/counters | grep -i "client_http.hits" |awk -F"=" 'gsub(" ","") {print $2}'`;
40 elif [ $ret == "errors" ];
41 then
42 rst=`squidclient -p 80 -U $Uid -W $Upass $RepArg cache_object://localhost/counters | grep -i "client_http.errors" |awk -F"=" 'gsub(" ","") {print $2}'`;
43 elif [ $ret == "kbytes_in" ];
44 then
45 rst=`squidclient -p 80 -U $Uid -W $Upass $RepArg cache_object://localhost/counters | grep -i "client_http.kbytes_in" |awk -F"=" 'gsub(" ","") {print $2}'`;
46 elif [ $ret == "kbytes_out" ];
47 then
48 rst=`squidclient -p 80 -U $Uid -W $Upass $RepArg cache_object://localhost/counters | grep -i "client_http.kbytes_out" |awk -F"=" 'gsub(" ","") {print $2}'`;
49 elif [ $ret == "hit_kbytes_out" ];
50 then
51 rst=`squidclient -p 80 -U $Uid -W $Upass $RepArg cache_object://localhost/counters | grep -i "client_http.hit_kbytes_out" |awk -F"=" 'gsub(" ","") {print $2}'`;
52 else
53 echo -e "\\ncheck argument !!\\n";
54
55 fi;
56
57 echo $rst;
[[email protected] ~/bin]#


 
 

Total. 25
번호 분류 제목 작성자 등록일 조회수
25 Shell [날짜] awk를 이용하여 unixtime의 시간 차 구하기 rootman 01-27 8221
24 Shell 쉘배열 (shell array) rootman 05-15 12755
23 Shell [날짜] date 함수로 unixtime의 시간 차 구하기 rootman 12-07 7098
22 Shell [squid] proxy 서버의 캐시 데이터 추출 rootman 03-24 6291
21 Shell [nagios] HP MSA60 P800 하드디스크 에러 검출 스크립트 rootman 06-26 10104
20 Shell [nagios] HP MSA60 P800 스카시 컨트롤러 펌웨어 체크 plugin rootman 04-16 10362
19 Shell Positional Parameter(위치변수) rootman 02-17 8725
18 Shell lynx를 통한 내부 링크와 외부 링크 return rootman 03-14 9459
17 Shell 입력 값은 값이 숫자인지 체크하기 rootman 11-13 8175
16 Shell [공유메모리] critical_create(): semget() failed 발생 시 rootman 01-30 8115
15 Shell [예제] 입력받은 문자열 대문자로 모두 변경하기 (1) rootman 09-12 7876
14 Shell 데이터 베이스 일괄(table 별도)로 전체 백업하기 (101) rootman 07-03 14198
13 Shell [최종수정 : 2005/09/12] 서버 상태 값 주기적으로 메일로 발송… 루트맨 01-27 11162
12 Shell mysql Database 테이블 모두 최적화하기 (7) rootman 03-21 15347
11 Shell [예제] 변수 할당과 치환 (17) rootman 10-14 8570
 1  2  
AND OR