서버 상태 값 주기적으로 메일로 발송하기 > 개발자팁

개발자팁

개발과 관련된 유용한 정보를 공유하세요.
질문은 QA에서 해주시기 바랍니다.

서버 상태 값 주기적으로 메일로 발송하기 정보

MySQL 서버 상태 값 주기적으로 메일로 발송하기

본문

서버가 많을 경우, 당연 별도 솔루션이나 장비 등을 통해 모니터링을 하는 것이 맞지만 그렇지 않을 경우
서버당 들어가서 부하량이나 기타 등등의 값을 수작업하여 조회해야 합니다.

이러한 불편함을 아주 간단히 ()|mail 을 사용해서 메일을 발송로 발송토록 쉘로 만들어 놓았습니다.

도움이 되려나 모르겠지만..
저는 이렇게 쓰고 있습니다...  궁해서요..^^

혹, 필요하신분들 있으시면 가져다가, 쓰세요.

화일명으로 저장후 실행권한 주시고, /etc/cron.hour 에 넣어 주세요.
하루에 한번씩 돌리면 좋을듯 하네요.

조금이라도 도움이 되었으면 하는 바램으로....


-------------------------------------
1. 스크립트
-------------------------------------
#!/bin/sh
# 작성일 : 2005/01/27
# http://www.rootman.co.kr
# 제목 : 서버 서비스 상태 표시기
# 별도 수정 사항 : 수신처 메일
# --------------------------------------------------
# 소스 라이브러리 함수 참조
source /etc/sysconfig/network
source /etc/sysconfig/network-scripts/ifcfg-eth0

# 수신처 메일
Email="coolho at lycos.co.kr";

# 네트워크 활성화 체킹
if [ ${NETWORKING} = "no" ]
then
    exit 0
fi

# 문법
(
echo "---------------------------------------------------------------------------" && \
echo "1. uptime 값" && \
echo "---------------------------------------------------------------------------" && \
uptime &&  echo -e "\n" && \
echo "---------------------------------------------------------------------------" && \
echo "2. w 값" && \
echo "---------------------------------------------------------------------------" && \
w    && echo -e "\n" && \
echo "---------------------------------------------------------------------------" && \
echo "3. 메모리 값" && \
echo "---------------------------------------------------------------------------" && \
free -m && echo -e "\n" && \
echo "---------------------------------------------------------------------------" && \
echo "4. 열려진 포트 값 조회" && \
echo "---------------------------------------------------------------------------" && \
nmap  -p 1-1024 localhost|grep -i "open" && echo -e "\n" && \
echo "---------------------------------------------------------------------------" && \
echo "5. 하드 디스크 사용량 조회" && \
echo "---------------------------------------------------------------------------" && \
df -h && echo -e "\n" && \
echo "---------------------------------------------------------------------------" && \
echo "6. pstree 값"  && \
echo "---------------------------------------------------------------------------" && \
pstree && echo -e "\n"    ) \
| mail -s "[${IPADDR}] 서비스 상태 표시기" ${Email}

echo "done +";
exit 0;


-------------------------------------
2. 결과 값
-------------------------------------

---------------------------------------------------------------------------
1. uptime 값
---------------------------------------------------------------------------
  4:34pm  up 9 days, 16:14,  2 users,  load average: 0.36, 0.35, 0.48


---------------------------------------------------------------------------
2. w 값
---------------------------------------------------------------------------
  4:34pm  up 9 days, 16:14,  2 users,  load average: 0.36, 0.35, 0.48
USER    TTY      FROM              LOGIN@  IDLE  JCPU  PCPU  WHAT
root    pts/1    111.111.111.111    4:24pm  9:32  0.04s  0.04s  -bash
root    pts/2    111.111.111.111    2:07pm  1.00s  0.08s  0.01s  /bin/sh ./map.s


---------------------------------------------------------------------------
3. 메모리 값
---------------------------------------------------------------------------
            total      used      free    shared    buffers    cached
Mem:          502        496          6          0        15        205
-/+ buffers/cache:        275        226
Swap:        2047          0      2047


---------------------------------------------------------------------------
4. 열려진 포트 값 조회
---------------------------------------------------------------------------
21/tcp    open        ftp                   
22/tcp    open        ssh                   
25/tcp    open        smtp                   
53/tcp    open        domain                 
80/tcp    open        http                   
110/tcp    open        pop-3                 
143/tcp    open        imap2                 
873/tcp    open        rsync

---------------------------------------------------------------------------
5. 하드 디스크 사용량 조회
---------------------------------------------------------------------------
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda6            4.6G  2.8G  1.6G  63% /
/dev/sda1            144M  13M  124M  10% /boot
/dev/sda5              24G  50M  22G  1% /home
none                  251M    0  251M  0% /dev/shm
/dev/sda3            2.9G  1.1G  1.6G  39% /usr/local
/dev/sdb1              15G  4.2G  10G  29% /home2
/dev/sdb2              18G  13G  5.1G  71% /home3


---------------------------------------------------------------------------
6. pstree 값
---------------------------------------------------------------------------
init-+-ahc_dv_0
    |-ahc_dv_1
    |-bdflush
    |-clamd
    |-crond
    |-2*[java]
    |-keventd
    |-khubd
    |-6*[kjournald]
    |-klogd
    |-ksoftirqd_CPU0
    |-kswapd
    |-kupdated
    |-libhttpd.ep---25*[libhttpd.ep]
    |-6*[mingetty]
    |-named---named---3*[named]
    |-proftpd---proftpd
    |-safe_mysqld---mysqld---mysqld---3*[mysqld]
    |-scsi_eh_0
    |-scsi_eh_1
    |-sendmail
    |-sshd-+-sshd---bash---map.sh-+-mail
    |      |                      `-map.sh---pstree
    |      `-sshd---bash
    |-syslogd
    `-xinetd---rsync<div class='small'>[이 게시물은 관리자님에 의해 2011-10-31 17:32:05 Linux에서 이동 됨]</div>
추천
0
  • 복사

댓글 1개

© SIRSOFT
현재 페이지 제일 처음으로