반응형
자정에 회사 업무 내용을 보기 위해 슬랙에 들어갔더니.. 오늘도 장애가 발생했다.
현재 슬랙 장애 관련 안내 페이지: status.slack.com/2021-01/9ecc1bc75347b6d1
휴..
일단 우리 내부 서버는 중요 태스크를 처리한 뒤 슬랙 hooking URL로 알림 발송을 하는 기능이 여럿 구현돼 있다. 근데 이런 연결 문제가 생기는 날에는.. 잠을 제대로 청할 수 없다. 모든 태스크 처리 후 슬랙 알림을 보내는 부분은 예외처리가 되어 있으니, 타임아웃(30초) 에러가 나더라도 큰 문제는 없겠다만, 그래도 혹시나 그 알림 보내는 영역의 코드 블럭 전체가 락을 활용하고 있다면, 데드락이 발생할 수 있는 가능성도 충분하기 때문이다..
아무래도 슬랙 장애를 대비해서, 서버 내에 슬랙 메시지 발송 온/오프 기능을 넣던지 해야겠다 ..... 슬랙 장애가 발견되면 어드민 설정시 알림 발송을 하지 않도록. 혹은 슬랙 스테이터스 페이지 크롤링으로 온/오프를 구현해도 괜찮을 듯..
검색을 해보니 Slack 에서 Status API를 따로 제공하고 있다.! (api.slack.com/docs/slack-status)
문서에 따르면 Response에서 status가 ok인 경우가 정상임을 알 수 있다.
curl https://status.slack.com/api/v2.0.0/current 을 호출 하거나, 파이썬을 사용한다면 아래처럼 처리할 수 있겠다.
import requests
url = "https://status.slack.com/api/v2.0.0/current"
response = requests.get(url).json()
if response.get('status') != 'ok':
stop_slack_from_our_service()
API Response Sample:
{
"status":"active",
"date_created":"2021-01-04T08:52:35-08:00",
"date_updated":"2021-01-04T08:52:35-08:00",
"active_incidents":[
{
"id":931,
"date_created":"2021-01-04T07:14:44-08:00",
"date_updated":"2021-01-04T08:52:35-08:00",
"title":"Customers may have trouble connecting or using Slack",
"type":"outage",
"status":"active",
"url":"https:\/\/status.slack.com\/2021-01\/9ecc1bc75347b6d1",
"services":[
"Posts\/Files",
"Workspace\/Org Administration",
"Login\/SSO",
"Notifications",
"Connections",
"Calls",
"Messaging",
"Search",
"Link Previews",
"Apps\/Integrations\/APIs"
],
"notes":[
{
"date_created":"2021-01-04T08:52:35-08:00",
"body":"There are no changes to report as of yet. We're still all hands on deck and continuing to dig in on our side. We'll continue to share updates every 30 minutes until the incident has been downgraded."
},
{
"date_created":"2021-01-04T08:20:33-08:00",
"body":"We're continuing to investigate connection issues for customers, and have upgraded the incident on our side to reflect an outage in service. All hands are on deck on our end to further investigate. We'll be back in a half hour to keep you posted."
},
{
"date_created":"2021-01-04T07:44:17-08:00",
"body":"We\u2019re still investigating the ongoing connectivity issues with Slack. There's no additional information to share just yet, but we\u2019ll follow up in 30 minutes. Thanks for bearing with us."
},
{
"date_created":"2021-01-04T07:14:44-08:00",
"body":"Customers may have trouble loading channels or connecting to Slack at this time. Our team is investigating and we'll follow up with more information as soon as we have it. We apologize for any disruption caused."
}
]
}
]
}
반응형
'개발 이야기 > Troubleshootings' 카테고리의 다른 글
[Swift] 메인 스레드 밖에서 UI 관련 호출 에러 발생시 (0) | 2021.04.14 |
---|---|
티스토리 기본 도메인사용시 애드센스 안나오는 문제, 개인 도메인 연결시 구글 검색 문제 해결 방법 (0) | 2021.01.21 |
uWSGI listen queue of socket ... full !!! (100/100) (0) | 2020.12.10 |
NoReverseMatch at / 'djdt' is not a registered namespace -- Django debug toolbar (0) | 2020.12.09 |
Error installing sass: Failed to build gem native extension (mac os High Sierra) (0) | 2020.12.09 |
댓글