ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Zabbix 문자모듈
    OS/Zabbix(monitoring) 2023. 7. 10. 14:26

    아래 2번 미디어타입에서 설정

     

    [내용] 날짜_시간

    서버명

    프로세스명

     

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

     

    1.환경

    KT문자모듈기준으로 생성되었으며, 자빅스는 5.0, centos 7

    2.미디어타입

    사업부별로, 상태별로(장애, 복구) 만들면 된다.
     - 메세지템플릿내용
    {EVENT.DATE}_{EVENT.TIME}
    {HOST.NAME}
    {EVENT.NAME}

     

    **스크립트 리스트

    미디어타입에 생성된 사업부(crm, svc)와 각 사업부별 장애(err)와 복구(ok) 스크립트

     

    **스크립트 작성(장애)

     

    **스크립트 작성(복구)

     



    3.유저

    사업부별 각각 생성
    유저
    연락방법

     

     

    4. 유저그룹

    사법부별 각각 생성
    유저그룹
    권한

     

     

    5.액션

    사업부별 각각 생성

     

    상세정보

     

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

    #Zabbix (컨피그)설정 : 스크립트경로설정

    vi /etc/zabbix/zabbix_server.conf

    # AlertScriptsPath=${datadir}/zabbix/alertscripts

    AlertScriptsPath=/usr/lib/zabbix/alertscripts


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

    #알람리스트생성 : 주석 가능

    권한 : chmod 775 / chown zabbix:zabbix

    vi /usr/lib/zabbix/alertscripts/crm_list.txt
    홍길동 01012345678
    #김철수 01023456789


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

    #장애스크립트, 복구스크립트 생성
    @는 임의한글이며, 특정 번호 기입 필요

    권한 : chmod 775 / chown zabbix:zabbix


    #장애스크립트

    vi /usr/lib/zabbix/alertscripts/crm_err.sh

    # ! /bin/bash

    tran_list=`cat /usr/lib/zabbix/alertscripts/crm_list.txt | grep -v "#" | wc -l` # tran_list의 라인수 확인
    tran_list_twice=`expr $tran_list \* 2` # tran_list의 라인수 곱하기 2
    tran_list_minus=`expr $tran_list - $tran_list_twice`

    for ((i = $tran_list_minus; i <= -1; i++));do
    echo "use zabbix; INSERT INTO em_tran (tran_phone, tran_callback, tran_status, tran_date, tran_msg, tran_type) VALUES ('`cat /usr/lib/zabbix/alertscripts/crm_list.txt | grep -v "#" |  head $i | tail -1 | awk '{print $2}'`', '@02발신번호', '1', sysdate(), concat('[장애] $1'), '4');" | mysql -u"zabbix" -p"@자빅스비밀번호"

    done


    #복구스크립트
    권한 : chmod 775 / chown zabbix:zabbix


    vi /usr/lib/zabbix/alertscripts/crm_ok.sh

    # ! /bin/bash

    tran_list=`cat /usr/lib/zabbix/alertscripts/crm_list.txt | grep -v pri | grep -v "#" | grep -v www | wc -l`
    tran_list_twice=`expr $tran_list \* 2`
    tran_list_minus=`expr $tran_list - $tran_list_twice`

    for ((i = $tran_list_minus; i <= -1; i++));do
    echo "use zabbix; INSERT INTO em_tran (tran_phone, tran_callback, tran_status, tran_date, tran_msg, tran_type) VALUES ('`cat /usr/lib/zabbix/alertscripts/crm_list.txt | grep -v "#" |  head $i | tail -1 | awk '{print $2}'`', '@02발신번호', '1', sysdate(), concat('[복구] $1'), '4');" | mysql -u"zabbix" -p"@자빅스비밀번호"

    done


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

    인서트문 설명

     

    INSERT INTO em_tran (tran_phone, tran_callback, tran_status, tran_date, tran_msg, tran_type) VALUES ('`cat /usr/lib/zabbix/alertscripts/crm_list.txt | grep -v "#" |  head $i | tail -1 | awk '{print $2}'`', '@02발신번호', '1', sysdate(), concat('[복구] $1'), '4');" | mysql -u"zabbix" -p"@자빅스비밀번호"

     

    insert into               em_tran                      (tran_phone, tran_callback, tran_status, tran_date,   tran_msg,     tran_type)

    [인서트]         [문자모듈테이블명]   [컬럼값 : 수신번호,    발신번호,       전송상태,   발송일시,   발송메세지,  발송타입 )

    전송상태 : 1 = 발송대기

    발송타입 : 4 =  SMS

     

    VALUES ('`cat /usr/lib/zabbix/alertscripts/crm_list.txt | grep -v "#" |  head $i | tail -1 | awk '{print $2}'`',

    값            ( 해당 텍스트를 읽어오는 구문 - 수신번호,

     

    '@02발신번호', '1',            sysdate(), concat('[복구] $1'),    '4');"                 |  mysql -u"zabbix" -p"@자빅스비밀번호"

    발신번호 ,        전송상태,  발송일시, 발송메세지,               발송타입         | 자빅스접근하여 입력하기 위한 계정정보

     

     

    댓글

Designed by Tistory.