살아 있나 감시하기

손님 전화로 장애를 처음 알면 이미 늦어요. 기계가 1분마다 대신 문을 밀어 보게 하고, 안 열리면 사장님 폰이 먼저 울리게 하는 일이에요.

쉽게 말하면

가게는 셔터가 안 올라가면 앞을 지나던 사람이 바로 알아요. 옆 가게 사장님이 전화를 주기도 하고요. 인터넷 가게는 앞을 지나가는 사람이 없어요. 문이 잠겨 있어도 그 앞에 서 있는 사람이 아무도 없어요. 살아 있나 감시하기는 가게 앞을 대신 지나가 줄 사람을 하나 두는 일이에요. 그 사람은 1분마다 문을 밀어 보고, 안 열리면 사장님 폰으로 전화를 걸어요.

이 장치는 고장을 막지 못해요. 아는 시각을 앞당길 뿐이에요. 그런데 피해 크기는 대개 멈춘 시간에 그동안 왔을 손님 수를 곱한 값이라, 아는 시각이 그대로 피해 규모가 돼요.

손님 전화로 알게 된 날
09:12 배포 뒤 결제 화면 멈춤 11:40 손님 전화 "결제가 안 돼요" 11:55 확인 시작 그 사이 주문 0건

두 시간 반은 장애 시간이 아니라 몰랐던 시간이에요. 고치는 데 걸린 시간은 15분이었어요.

기계가 먼저 알려 준 날
09:12 배포 뒤 결제 화면 멈춤 09:14 폰 알림 두 번 울림 09:16 이전 판으로 되돌림 주문 손실 1건

같은 고장, 같은 실력이에요. 다른 건 아는 시각 하나예요.

무엇을 지켜보게 하나

첫 화면 하나만 등록해 두는 경우가 가장 많아요. 그런데 실제 사고는 앞은 멀쩡한데 안이 죽는 모양으로 더 자주 와요. 첫 화면은 사진과 글이라 웬만해선 안 죽고, 죽는 건 남의 서비스에 말을 거는 자리예요.

지켜볼 자리여기가 죽으면 벌어지는 일안 보면 언제 알게 되나
첫 화면가게가 통째로 안 열려요. 가장 눈에 띄는 대신 가장 드문 사고예요누구나 금방 알아요. 그래서 이것만 보면 부족해요
주문이나 예약을 끝내는 화면구경은 되는데 마지막 버튼에서 멈춰요. 매출이 그대로 0이 돼요손님이 전화해 줄 때. 대부분은 전화 없이 그냥 나가요
로그인기존 손님만 못 들어와요. 새 손님 화면은 멀쩡해 보여요재구매 손님이 문의할 때. 하루가 지나기도 해요
결제사에서 결과를 받는 자리돈은 빠졌는데 주문이 안 잡히는 상태가 쌓여요정산할 때. 며칠 뒤라서 수습이 가장 비싼 종류예요
관리자 화면손님은 아무 문제 없고 사장님만 못 들어가요일하려고 열었을 때. 급하지만 손님 피해는 없어요

돈이 지나가는 길부터 등록해요

감시 대상을 다섯 개 넘게 두면 관리가 무거워져요. 처음에는 두 개면 충분해요. 첫 화면 하나, 주문이나 예약이 끝나는 화면 하나. 결제를 붙였다면 결제 결과를 받는 자리를 세 번째로 넣어요. 나머지는 사고를 한 번 겪은 뒤에 늘려도 늦지 않아요.

살아 있다는 판정을 어떻게 하나

감시 도구가 하는 일은 단순해요. 정해진 주소를 정해진 간격으로 열어 보고, 돌아온 답이 약속과 다르면 실패로 세요. 다섯 걸음이에요.

  1. 1정한 간격마다 주소를 열어요. 1분에서 5분 사이가 흔해요. 짧을수록 빨리 알지만 그만큼 자주 두드리는 셈이에요.
  2. 2돌아온 번호를 봐요. 200이면 정상, 500대면 서버 탓이에요. 번호의 뜻은 상태 코드에 있어요.
  3. 3화면 안에 있어야 할 문구가 있는지 봐요. 이 한 걸음이 감시의 값을 절반 넘게 정해요.
  4. 4연속으로 실패했는지 봐요. 한 번 실패는 흔한 잡음이라 대개 두세 번 연속일 때만 사고로 쳐요.
  5. 5사고로 판정되면 알립니다. 복구되면 복구도 알려요. 끝났다는 소식이 없으면 사장님이 계속 붙들려 있게 돼요.

세 번째 걸음이 빠진 감시는 자주 헛돌아요. 요즘 화면은 껍데기를 먼저 보내고 내용을 나중에 채우는 방식이 많아서, 내용이 통째로 비어도 번호는 200으로 오는 일이 생겨요. "예약하기"라는 글자가 화면에 있는지까지 확인하라고 정해 두면 이 구멍이 막혀요.

장면 · 외주 개발자가 감시를 붙여 주며 말했다

메인 주소로 1분마다 핑 돌게 해 뒀습니다. 초록불이면 정상이에요.

여기서 되물을 건 두 가지예요. "주문 끝나는 화면도 보고 있나요." 그리고 "화면 안 글자까지 확인하나요, 열리는 것만 보나요." 둘 다 아니라면 그 초록불은 첫 화면이 열린다는 뜻까지만이에요. 초록불을 믿고 결제가 멈춘 걸 반나절 모르는 상황이 여기서 나와요.

가짜 경보가 감시를 망쳐요

이 장치가 실패하는 이유 1위는 고장을 못 잡아서가 아니에요. 너무 자주 울려서 사장님이 알림을 끄기 때문이에요. 새벽 3시에 두 번 헛울리면 그다음 주에 알림은 무음으로 바뀌어 있어요.

헛울리는 원인실제로 벌어진 일대처
한 번 실패에 바로 알림인터넷 경로가 잠깐 흔들린 것뿐이에요. 손님은 아무 일도 겪지 않았어요두세 번 연속 실패일 때만 알리게 바꿔요
감시 도구가 봇으로 차단당함1분마다 두드리는 걸 공격으로 보고 막았어요. 사이트는 멀쩡해요감시용 주소를 따로 두거나 차단 목록에서 빼 줘요
배포하는 몇 분 동안 실패새 판으로 갈아 끼우는 중이라 잠깐 안 열려요배포 시간에는 알림을 잠시 멈춰요. 되돌리기 때도 같아요
해외에서만 실패감시 지점이 멀어서 시간이 초과됐어요. 국내 손님은 잘 쓰고 있어요손님이 실제로 있는 지역에서 보게 지점을 맞춰요
확인 시간이 너무 짧음느린 화면이 정상 범위 안인데도 실패로 잡혀요가장 느린 화면 기준으로 여유를 두고 다시 정해요

무시하기 시작한 알림은 없는 알림이에요

알림이 한 주에 세 번 넘게 헛울리면 그건 설정을 고치라는 신호예요. 감시의 목표는 많이 알리는 게 아니라 울렸을 때 반드시 진짜인 상태를 만드는 거예요. 알림을 어디로 어떻게 받을지는 장애 알림 받기 쪽 이야기예요.

처음 정할 값 다섯 가지

설정 화면에서 채우게 되는 칸은 대개 이 다섯 개예요. 정답은 가게마다 다르지만, 처음에는 오른쪽 칸대로 두고 한 달 겪어 본 뒤 고치면 돼요.

처음에는 이렇게
확인 간격5분으로 시작해요1분이 좋아 보이지만 헛울림도 다섯 배로 늘어요. 손님이 늘면 그때 줄여요
사고로 치는 연속 실패 횟수2회1회는 잡음이 섞이고, 3회는 5분 간격이면 15분을 기다리게 돼요
응답을 기다려 주는 시간10초 안팎가장 느린 화면이 평소 몇 초인지 재 보고 그 두 배쯤으로 잡아요
화면 안에서 찾을 문구"주문하기"처럼 그 화면에만 있는 말회사 이름은 오류 화면에도 있어서 확인이 안 돼요
밤에도 울릴지돈이 지나가는 화면만 밤에도 울려요전부 울리게 두면 사람이 먼저 지쳐요. 밤에 못 고칠 것은 아침에 봐도 돼요

확인해 보세요

감시 도구가 초록불인데 손님이 "결제가 안 된다"고 전화했어요. 가장 먼저 의심할 것은?

직접 해보기

직접 해보기

감시할 주소 두 개를 먼저 적어 두세요

감시 도구를 고르는 것보다 이게 먼저예요. 내가 만든 것들을 열어 보고, 손님이 실제로 돈을 쓰는 화면의 주소 하나와 첫 화면 주소 하나를 메모장에 적어 두세요. 그리고 그 화면에만 있는 글자를 하나씩 골라 옆에 적어요. 어떤 감시 도구를 쓰든 이 네 줄을 그대로 옮겨 넣으면 설정이 끝나요.

내가 만든 것 열어 보기
Q. 감시 도구는 돈이 많이 드나요?
감시 대상이 몇 개인 수준에서는 무료 요금제로 시작할 수 있는 곳이 여럿 있어요. 값이 올라가는 건 확인 간격을 짧게 할 때와 감시 지점을 여러 나라로 늘릴 때예요. 손님이 국내에만 있으면 둘 다 필요 없어요.
Q. 만든 곳에서 이미 봐 주지 않나요?
사이트를 올려 둔 곳은 자기네 서버가 살아 있는지는 봐요. 사장님 화면의 주문 버튼이 도는지는 안 봐요. 밖에서 손님처럼 두드려 보는 눈은 따로 두는 게 맞아요. 안에서 보는 눈만 있으면 그 안이 통째로 멈췄을 때 알려 줄 사람이 없어요.
Q. 바이브캠퍼스에서 만든 것도 감시가 필요한가요?
필요해요. 만들어서 세상에 열어 둔 순간부터 주소가 생기고, 주소가 있으면 안 열리는 날도 생겨요. 감시는 밖에서 지켜보는 별개 장치라 만든 도구와 상관없이 따로 붙여요.
Q. 알림이 왔는데 열어 보니 멀쩡해요. 무시해도 되나요?
그날은 넘어가도 되지만 기록은 남기세요. 같은 시간대에 반복되면 잡음이 아니라 짧게 반복되는 진짜 장애일 수 있어요. 새벽 특정 시각마다 실패한다면 그 시간에 도는 자동 작업을 의심해요.
Q. 감시를 붙였는데 장애가 났어요. 그럼 소용없는 것 아닌가요?
감시는 예방 장치가 아니라 탐지 장치예요. 목표는 사고 0건이 아니라 모르고 지나간 시간 0분이에요. 알림을 받은 다음 무엇을 어떤 순서로 할지는 장애가 났을 때 순서에 있어요.

더 깊이 (안 읽어도 괜찮아요)

핑이 되는데 사이트가 안 열리는 이유 · 예전 방식은 서버가 살아 있는지만 물었어요. 서버는 켜져 있는데 그 위에서 도는 프로그램만 멈춘 상태가 흔해요. 이때 옛 방식은 초록불을 그대로 켜 둬요. 그래서 지금은 실제 손님이 여는 주소를 그대로 열어 보는 방식으로 바뀌었어요. 감시는 손님과 같은 길로 들어와야 뜻이 있어요.

확인 전용 주소를 따로 만드는 방법 · 규모가 커지면 감시용으로 작은 주소를 하나 만들어 두기도 해요. 그 주소를 열면 데이터베이스에 실제로 한 번 물어보고 결과만 짧게 답하게 만드는 식이에요. 첫 화면을 여는 것보다 가볍고, 안쪽까지 살아 있는지 확인돼요. 만들어 달라고 할 때는 "손님 정보는 아무것도 안 나오게 해 주세요"를 같이 말해요.

몇 퍼센트 살아 있었나를 세는 이유 · 감시 기록이 쌓이면 한 달 중 몇 퍼센트가 정상이었는지 숫자가 나와요. 이 숫자는 기업 손님과 계약할 때 요구받는 항목이에요. 지금 당장은 안 써도, 기록이 없으면 나중에 뒤로 만들 수 없어요. 감시를 일찍 붙여 두는 값이 여기서도 나와요.

이것만 기억하세요

  • ·감시는 고장을 막지 못하고 아는 시각을 앞당겨요. 그 시각이 곧 피해 규모예요
  • ·첫 화면만 등록하면 절반만 봐요. 주문이나 예약이 끝나는 화면을 꼭 넣어요
  • ·열리는지만 보지 말고 그 화면에만 있는 글자까지 확인하게 해요
  • ·헛울림이 잦으면 알림이 꺼져요. 두세 번 연속 실패일 때만 울리게 조여요
  • ·밤에 울릴 것은 돈이 지나가는 화면만으로 줄여요. 사람이 먼저 버텨야 해요
VibeCampusNew build