![mattermost deploy 및 봇 사용해보기](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FpmO6K%2FbtsC7uQaB3R%2Fwbxcp4YV1tR5BLIcBZHczK%2Fimg.png)
이전 포스팅
2023.12.25 - [프로젝트/Github Rest API로 프로젝트 리뷰 대시보드 구성하기] - NodeJS Express를 통해서 API 서버 구축 및 DB 업데이트 하기
2023.12.22 - [프로젝트/Github Rest API로 프로젝트 리뷰 대시보드 구성하기] - Grafana 리뷰 대시 보드 구성 - Panel 에 변수 추가하기
필요 배경 지식
- mattermost란 무엇인지
- mattermost bot이란 무엇인지
- docker 배경 지식
Prerequisite
그라파나 대시보드의 alert 기능을 mattermost의 봇과 연결시키기 위해서 mattermost 로컬 버전을 로컬에 deploy하고 bot을 생성해보는 과정을 진행해보려고한다.
Mattermost를 로컬에서 실행한다.
Install Mattermost via Docker — Mattermost documentation
PostgreSQL You can change the Postgres username and/or password (recommended) in the .env file.
docs.mattermost.com
docker run --name mattermost-preview -d --publish 8065:8065 mattermost/mattermost-preview
위 명령어를 통해서 mattermost를 실행한다.
계정 및 채널을 하나 만들어 둔다.
그리고 아래의 페이지를 통해서 봇을 하나 만들어 놓는다.
관련 블로그 포스팅을 통해서 Mattermost의 Webhook과 bot을 통해서 채널에 메세지를 보내는 예제를 확인했다.
[MatterMost] Webhooks와 Bot으로 메세지 보내기
https://olrlobt.tistory.com/63 [MatterMost] 매터모스트 개인 테스트 서버(Preview server) 열기 매터모스트 MatterMost 매터모스트(Mattermost)는 오픈 소스 메시징 플랫폼으로, 팀들이 소통할 수 있는 자체 호스팅
olrlobt.tistory.com
봇을 통해서 특정 채널에 메세지 보내기
curl -i -X POST -H "Content-Type: application/json" -d "{\"channel_id\":\"<channel-id>\", \"message\":\"This is a message from a bot\", \"props\":{\"attachments\": [{\"pretext\": \"Look some text\",\"text\": \"This is text\"}]}}" -H "Authorization: Bearer < YOUR Bot Token>" http://localhost:8065/api/v4/posts
- Channel ID 확인 방법은 Channel 의 info 누르면 됨
- Bot의 Token은 생성시에 한번 나옴 ( 사내에서는 메일로 확인 가능할것으로 생각됨 )
- Post 메세지를 통해서 bot에게 채널에 메세지를 보내도록 유도하는것으로 확인했다.
Postman을 통해 로컬 mattermost 및 로컬 bot을 통해서 예시를 실행해본 결과가 아래와 같다.
따라서, 나의 경우 아래와 같이 서버를 구성하면 알림 서버 채널을 구성할 수 있을것 같다.
1. Grafana Webhook API server 구축. (Grafana의 Webhook Post를 받아주기 위함)
2. Post를 받아주는 서버에서 Post를 받았을때, bot에게 메세지를 던지는 POST를 던짐
3. bot이 사용자들에게 알림을 던져줌
이런식으로 작성하면 내가 원하는대로 구현이 될것으로 생각된다.
'프로젝트 > Github Rest API로 프로젝트 리뷰 대시보드 구성하기' 카테고리의 다른 글
Mattermost alert bot 설계하기 (0) | 2024.01.31 |
---|---|
Grafana Dashboard에 Webhook 서버 (Mattermost 봇) 연결해서 알람 봇 만들기 - 작성중 (0) | 2024.01.08 |
NodeJS Express를 통해서 API 서버 구축 및 DB 업데이트 하기 (0) | 2023.12.25 |
Grafana 리뷰 대시 보드 구성 - Panel 에 변수 추가하기 (0) | 2023.12.22 |
Grafana에서 DB 조작하기 (0) | 2023.12.18 |
개발 및 IT 관련 포스팅을 작성 하는 블로그입니다.
IT 기술 및 개인 개발에 대한 내용을 작성하는 블로그입니다. 많은 분들과 소통하며 의견을 나누고 싶습니다.