애플리케이션 관련 문제 발생시 얼롯을 받기위해 Slack을 사용하였습니다.
Slack 어플을 다운로드 후 얼롯팅 받을 새로운 워크 스페이스를 생성합니다.
▶ 새 워크스페이스 추가
▶ 채널을 우클릭하여 세부정보를 open합니다.
통합 -> 앱 추가 클릭
▶ incoming-webhook 앱 설치
Incoming Webhook
-
외부 소스로부터 Slack 으로 메시지를 게시할 수 있는 방법을 제공하는 Plugin
-
HTTP 요청을 사용하여 원하는 형태의 메시지 (더불어 기타 세부 정보)를 JSON 페이로드와 함께 사용가능
▶ 얼롯을 받고자하는 채널에 설치
▶ Webhook URL을 잘 저장해둡니다.
▶ 채널에 추가된것 확인
▶ 서버에서 아래 명령어를 치면 slack으로 메시지가 보내집니다.
channel #<보내고자하는 채널명> , webhook봇에 메시지가 보내지며, 원하는 text 기입, webhook url 입력
curl -X POST --data-urlencode "payload={\"channel\": \"#dbalert\", \"username\": \"webhookbot\", \"text\": \"slack alert test success.\", \"icon_emoji\": \":ghost:\"}" https://hooks.slack.com/services/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
▶ 메세지 확인
▶ 테스트용으로 mysql down시 slack 얼롯 설정
[root@mysql ~]# vi slack.sh
#!/bin/bash
flag=`ps -ef | grep -v grep | grep mysql`
if [ -z "$flag" ];then
curl -X POST -H 'Content-type: application/json' --data '{"text":"'mysql_server_down_alert'"}' https://hooks.slack.com/services/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
fi
[root@mysql ~]# crontab -l
* * * * * /bin/sh /root/slack.sh
▶ alert 테스트
## mysql kill
[root@mysql bin]# ps -ef | grep mysql
mysql 7132 23840 1 13:51 pts/0 00:00:00 ./mysqld --user=mysql
root 7246 23840 0 13:52 pts/0 00:00:00 grep --color=auto mysql
[root@mysql bin]# kill -9 7132
▶ alert 메시지 확인
'Others > Opensource Tool' 카테고리의 다른 글
[Terraform - NaverCloud vm생성] part 1 (0) | 2022.06.19 |
---|---|
[MySQL - Slow query 메일 전송] use. pt-qeury-digest (0) | 2022.05.14 |
[Ansible - Semaphore playbook테스트] part 3 (0) | 2022.04.24 |
[Ansible - Semaphore Web설정] part 2 (0) | 2022.04.24 |
[Ansible - Semaphore 설치] part 1 (0) | 2022.04.24 |