오늘은 대한입니다.
sun's longitude:299 44 17.55 
· 자유게시판 · 묻고답하기 · 알파문서 · RPMS list
· 사용자문서 · 팁/FAQ모음 · 리눅스Links · 자료실
· 서버정보 · 운영자 · Books/FAQ · FreeBSD
/board/read.php:소스보기  

질문과 답변 게시판입니다.

현재 실시간으로 이곳 서버의 설정파일(몇개)를 보여주고 있습니다.
서버의 설정내용에 관한 질문은 먼저 이곳 서버의 설정내용을 참고하시길 바랍니다.

[*** 쓰기 금지단어 패턴 ***]
글 본문 중간에 업로드할 이미지를 추가하는 방법 : @@이미지이름@@
ex) @@foo.gif@@
1968 번 글의 답장글: Re: Re: Re: 어떤 유저가 얼마만큼의 CPU를 사용하는지 알 수 있을까요?
글쓴이: 산이 [홈페이지] 글쓴날: 2004년 03월 07일 21:05:53 일(저녁) 조회: 732

[하얀피]님이 남기신 글:

>아래 로그 기록을 각 버츄얼호스트 부분에 몽땅 써주어야
하나요???
>버츄얼 외의 공란에 써주었더니 파일생성은 되지만 로그는
안남네요..
>
>[산이]님이 남기신 글:
>
>>[하얀피]님이 남기신 글:
>>
>>>요즘 www 1번 서버와 3번서버가 랜덤적으로 폭주하고
있습니다.
>>>가끔 스스로 폭주가 멈추는 경우는 있지만...
>>>폭주할때마다
 cpu가 99% 이상으로 차며 아파치 프로세서가 맥스를
넘어버립니다.
>>>어떤 계정에서의 무한루프쪽을 의심하고 있는데요.
>>>그래서 그런데..
>>>실시간으로 어떤 유저가 얼마만큼의 CPU를 사용하는지 알 수
있을런지요?
>>>일단 셸을 이용해서 cpu와 memory를 체크할 수 있는 스크립트를
사용하는데
>>>이것을 계정 list와 대조시켜서 계속 감지한다는게
조금--;;;;
>>>다른 방법이 없을까요???
>>>
>>>아래는 제가 구한 스크립트 입니다.
>>>#!/bin/sh
>>>#
>>># uid 찾기
>>>#
>>>ARG=$1
>>>FINDED_UID=$(cat /etc/passwd | grep ^$ARG | cut -f3 -d:)
>>>a=`ps -eo uid,pcpu |tail +2| tr -s [:space:]`
>>>set `echo $a`
>>>SUM=0
>>>SUM1=0
>>>while [ $# -gt 0 ]
>>>do
>>>        FIRST=$1
>>>        SECONT=$2
>>>        if [ $FIRST -eq $FINDED_UID ]
>>>        then
>>>                SECONT_F=$(echo $SECONT|cut -f1 -d.)
>>>                SECONT_S=$(echo $SECONT|cut -f2 -d.)
>>>                SUM=`expr $SUM + $SECONT_F`
>>>                SUM1=`expr $SUM1 + $SECONT_S`
>>>        fi
>>>shift 2
>>>done
>>>SUM=`expr $SUM + $SUM1 / 10 `
>>>SUM1=`expr $SUM1 % 10`
>>>echo "현재 ${ARG}의 CPU 사용량은 $SUM.$SUM1% 입니다."

>>
>>========================================
>>
>>답변이 늦었습니다.
>>
>>사용자 계정에 대한 체크는 이와 같이 하면 됩니다.
>>다만 그 결과치가 몇 % 이상일 경우 관리자 메일로
보낸다거나
>>어떤 메시지가 출력하도록 설정해 놓으면 되겠죠.
>>
>>그런데
>>
>>apche 는 보통 nobody 아니면 www 권한으로 돌아가기
때문에
>>이와 같은 원리로는 체크할 수 없습니다.
>>
>>`가상호스트 == 계정'
>>
>>이라는 공식이 성립되므로 아파치 쪽에서 설정 및
모니터링해야 합니다.
>>
>>즉 어느 가상호스트에서
 트래픽이 많이 생기는지 또한 어느
>>가상호스트에서
 실행시간이 많이 걸리는지 체크해야 합니다.
>>
>>전자는 log 파일과 MRTG (설치/설정)를 또는 throttle 를
기준으로
>>방향을 잡고
>>후자 역시 log 파일을 중점으로 모니터링해야 합니다.
>>
>>[아파치 로그 포맷]
>>
>>http://linuxchannel.net/docs/apache_log.txt
>>
>>전자 :
>>
>>년도월일시간분
 호스트네임 전송바이트
>>LogFormat "%{%Y%m%d%H%M}t %v %b" trafficrx
>>CustomLog /usr/local/apache/logs/trafficrx_log trafficrx
>>
>>후자는
>>
>>년도월일시간분
 호스트네임 실생한시간
>>LogFormat "%{%Y%m%d%H%M}t %v %T" runtime
>>CustomLog /usr/local/apache/logs/runtime_log runtime
>>
>>물론 이 두개를 하나의 로그 파일로 관리할 수 도 있습니다.

>
>======================================== 

========================================

LogFormat "%{%Y%m%d%H%M}t %v %b" trafficrx
LogFormat "%{%Y%m%d%H%M}t %v %T" runtime

CustomLog /usr/local/apache/logs/trafficrx_log trafficrx
CustomLog /usr/local/apache/logs/runtime_log runtime

....

NameVirtualHost ....

이렇게 메인 설정 부분에 설정하세요.

$v (호스트 네임) 가 있으므로 어느 호스트에서 이상이 있는지
쉽게 알 수 있을 겁니다.

 
이전글 : Re: Re: 어떤 유저가 얼마만큼의 CPU를 사용하는지 알 수 있을까요?
다음글 : Re: Re: Re: Re: 어떤 유저가 얼마만큼의 CPU를 사용하는지 알 수 있을까요?  
 from 61.254.74.228
JS(Redhands)Board 0.4 +@

Re: Re: 어떤 유저가 얼마만큼의 CPU를 사용하는지 알 수 있을까요? Re: Re: Re: Re: 어떤 유저가 얼마만큼의 CPU를 사용하는지 알 수 있을까요?
인쇄용 


apache lighttpd linuxchannel.net 
Copyright 1997-2026. linuxchannel.net. All rights reserved.

Page loading: 0.01(server) + (network) + (browser) seconds