Zabbix3.0에서 추가된 매개변수를 사용하여 Slack에 알림 보내기

5696 단어 슬랙zabbix
*2017/09/16 표시되지 않은 이미지 수정

Zabbix의 알림 알림은 이메일로 보내졌지만,
Slack에 방을 세우고 거기에 통지하도록 설정하기로 했다.



관련 리소스에 나열된 사이트에 따라 여러 가지를 시도했지만
생각대로 움직이지 않기 때문에 결국 스스로 조용한 결과를 메모해 두기로 했다.

전제


  • CentOS Linux release 7.2.1511
  • Zabbix 3.01

  • 절차



    경고 스크립트의 위치를 ​​확인합니다.


    [root@jumps alertscripts]# grep AlertScripts /etc/zabbix/zabbix_server.conf
    # AlertScriptsPath=${datadir}/zabbix/alertscripts
    AlertScriptsPath=/usr/lib/zabbix/alertscripts
    

    Zabbix가 스크립트를 사용하여 경고를 알리도록 설정



    Media Types



    이미지처럼 설정.



    Script Parameters에 대해서는 여기를 참조.

    설정한 파라미터가 스크립트의 인수로서 건네받는 구조다. 다음과 같이 된다.
    /usr/lib/zabbix/alertscripts/slack.sh {ALERT.SUBJECT} {ALERT.MESSAGE}
    

    사용자 만들기



    사용자 slack의 권한으로 보이는 범위의 경고는 Script : Slack을 이용하여 통지되도록 지정한다.

    Send to 는 이번에는 사용되지 않지만, 필수인 것 같기 때문에 적당하게 Channel명을 넣는다.

    Action 설정



    각 호스트에서 체크하고 있는 Trigger 가 Hit 했을 때에 이 Action 가 움직인다.
    즉, 무언가 경고가 발생했는지 어떻게 할지 지정합니다.
    이번에는 사용자 : slack에게 메시지를 보내면 설정합니다.







    슬랙 측 설정



    zabbix 방 만들기



    CHANNELS의 오른쪽에있는 +에서 깔끔하게 만들 수 있으므로 할애

    Webhook 설정



    Team Setting에서 적당히 찾아 포치 포치하고 다음과 같은 화면으로 진행하여 Webhook URL을 취득.


    /usr/share/zabbix/favicon.ico 을 png로 이용. 조금 bokeh.

    스크립트 작성



    세세한 성형은 귀찮기 때문에, 통지될 때 색만 바뀌도록 지정한다.
    색은 디폴트로 3개 준비되어 있는 것 같다.


    *2016/03/30 추가
    SNMP-Trap의 Message 안에 들어 있다"(더블 쿼트)가 JSON과 궁합 나쁜 것 같기 때문에 지우는 행을 추가했다

    *2017/09/14 추가
    slack 측의 변경이 있었던 것 같아서 사용할 수 없게 되었기 때문에, attachments의 쓰는 방법을 수정했다

    script의 내용은 이쪽
    htps : // 기주 b. 코 m / td 카오루 / 쌈 x

    완성 된 알림이 기사의 맨 위에 표시되는 이미지.channel 는 Webhook URL에서 지정되었으므로 불필요했습니다.
    덧붙여서, attachments 를 사용하지 않고 메세지를 소소로 내면,


    기타



    스크립트 안에서는 {ALERT.MESSAGE} 의 정형을 하고 있지 않으므로, Action 의 Default Message 를 편집해 필요한 정보만 취하도록 한다.

    *2016/03/23 추가

    참고까지 편집한 것도 붙여 둔다.

    DefaultMessage
    Date: {EVENT.DATE}  {EVENT.TIME} 
    Description: {TRIGGER.NAME}
    Hostname: {HOST.NAME1}
    IP address: {HOST.IP1}
    Severity: {TRIGGER.SEVERITY}
    
    Item values: {ITEM.NAME1}: {ITEM.VALUE1}
    
    Original event ID: {EVENT.ID}
    

    RecoveryMessage
    Date: {EVENT.RECOVERY.DATE}  {EVENT.RECOVERY.TIME}
    Description: {TRIGGER.NAME}
    Hostname: {HOST.NAME1}
    IP address: {HOST.IP1}
    
    Item values: {ITEM.NAME1}: {ITEM.VALUE1}
    
    Original event ID: {EVENT.ID}
    



    Zabbix 3.0이라면 Original event ID가 동일하지 않기 때문에 (?) RecoveryMessage가 사용되지 않는 것 같다. 수수께끼

    관련 리소스


  • Zabbix에서 Slack에게 알림 보내기
  • Zabbix에서 Slack으로 조금 풍부한 알림
  • htps : // 기주 b. 코 m / 에리코 c / 쟈비 x-s ぁ ck-a rtsc pt
  • htps //w w. 잔인한 x. 코 m / 도쿠 멘 타치 온 / 3.0 / 마누아 l / 아펜 x / 마코로 s / 쏘 r d_by_ ぉ 카치 온
  • htps : // 아피. scck. 이 m / cs / ch 맨 ts
  • 좋은 웹페이지 즐겨찾기