Cron 작업이 조용히 실패합니다. 서버 이동 후 백업 스크립트 실행이 중지되거나, 비밀번호 순환으로 인해 야간 가져오기가 중단되거나, 디스크가 가득 차서 오전 3시에 청구서 작업이 중단됩니다. 다운된 것이 없으므로 일반적인 가동 시간 모니터는 녹색으로 유지되며, 몇 주 후에 백업이 필요하거나 고객이 청구서가 어디에 있는지 묻는 경우에만 알 수 있습니다. 하트비트 모니터링은 이러한 격차를 줄여줍니다. 이 가이드는 작동 방식과 몇 분 안에 무료로 설정하는 방법을 보여줍니다.
심박 모니터링이란 무엇입니까?
정기적인 가동 시간 모니터는 외부에서 웹사이트를 확인합니다. 하트비트 모니터는 반대로 작동합니다. 즉, 예약된 작업이 체크인됩니다. 고유한 URL을 얻고 작업이 완료될 때마다 이를 호출합니다. 전화가 제 시간에 도착하지 않으면 모니터는 문제가 있음을 알고 사용자에게 경고합니다.
이는 모든 종류의 자동 실패를 한 번에 포착합니다.
- 작업은 시작되지 않았습니다.
crontab항목이 손실되었거나, 스케줄러 없이 서버가 재부팅되었거나, 컨테이너가 교체되었습니다. - 작업이 중단되었습니다. 스크립트가 끝에 도달하기 전에 오류가 발생하여 스크립트가 중지되었습니다.
- 작업이 중단됩니다. 시작했지만 잠긴 데이터베이스 또는 느린 API에 걸려 완료되지 않습니다.
- 서버 전체가 사라졌습니다. 서버도 없고 핑도 없으므로 다른 사람이 보고 있지 않아도 이에 대해 듣게 됩니다.
어떤 예약된 작업을 모니터링해야 합니까?
아무도 모르게 작업을 중단할 때 비용이 가장 많이 드는 작업부터 시작하세요.
- 데이터베이스 및 파일 백업. 확인하지 않은 백업은 보유하지 않았을 수도 있는 백업입니다.
- 청구 및 송장 발행 스크립트, 구독 갱신 및 지불 조정.
- 매장, CRM, 창고 또는 공급업체 피드 간에 데이터를 가져오고 동기화합니다.
- 예약된 직원이 보내는 이메일 대기열 및 뉴스레터 입니다.
- 자동 SSL 갱신과 같은 인증서 갱신 작업과 디스크가 가득 차는 것을 방지하는 정리 작업입니다.
- 예약된 게시물을 게시하고 유지 관리 작업을 실행하는 WordPress 또는 애플리케이션 cron.
무료 플랜에는 5개의 하트비트 모니터가 포함되어 있으며 이는 일반적인 중소기업이나 소수의 클라이언트 사이트의 중요한 작업을 처리하기에 충분합니다.
무료 cron 작업 모니터링을 설정하는 방법
1. 무료 계정 만들기
귀하의 이메일 주소로 My Site Alerts 에 가입하세요. 신용카드도 없고 체험 기간도 없습니다.
2. 하트비트 생성
대시보드에서 하트비트를 열고 하트비트 생성을 선택합니다. 야간 데이터베이스 백업과 같은 명확한 이름을 지정하면 경고를 통해 무엇이 실패했는지 정확하게 알 수 있습니다.
3. 예상 일정 및 유예 기간 설정
하트비트 예상 간격에 작업 실행 빈도(15분마다, 매시간, 하루에 한 번)를 입력합니다. 그런 다음 작업을 실행하는 데 걸리는 대략적인 시간과 안전 여유를 더해 유예 기간을 설정합니다. 2시에 실행되고 일반적으로 20분이 걸리는 백업에는 약 30~40분의 유예 기간이 필요하므로 밤이 늦어도 잘못된 경보가 발생하지 않습니다.
4. 하트비트 URL을 복사하세요.
모든 하트비트에는 고유한 비밀 URL이 있습니다. 작업은 실행될 때마다 GET 또는 POST 요청을 보냅니다. 브라우저에서 URL을 한 번 열어 테스트할 수도 있습니다. 하트비트가 위로 전환되어야 합니다.
5. 알림을 보낼 위치 선택
이메일은 즉시 사용할 수 있습니다. 또한 Slack, Discord, Telegram, Microsoft Teams 또는 자신의 웹후크에 알림을 보내 놓친 실행이 실제로 보이는 곳에 도달하도록 할 수도 있습니다.
직장에서 하트비트를 핑하는 방법
리눅스 crontab
명령 뒤에 && 로 결합된 요청을 추가하면 작업이 성공한 경우에만 핑이 전송됩니다.
0 2 * * * /usr/local/bin/backup.sh && curl -fsS -m 10 --retry 3 https://mysitealerts.com/webhook-heartbeat/YOUR-CODE -m 10 옵션은 네트워크가 느린 경우 컬이 멈추는 것을 중지하고 --retry 3 짧은 연결 문제를 해결합니다. 서버에 컬 대신 wget이 있는 경우 wget -q -O /dev/null 뒤에 URL을 입력하면 동일한 작업을 수행합니다.
스크립트 내부
실제 작업이 완료된 후 스크립트의 마지막 줄에 ping을 입력합니다. 쉘 스크립트에서 맨 위에 set -e 추가하면 명령이 실패하면 ping에 도달하기 전에 스크립트가 중지됩니다. Python, PHP 또는 Node.js에서는 작업의 마지막 단계로 하트비트 URL에 대한 간단한 HTTP 요청을 수행합니다.
호스팅 제어판
공유 호스팅에서는 제어판의 cron 작업 끝에 동일한 컬 명령을 추가하세요. 대부분의 패널에서는 전체 명령줄을 붙여넣을 수 있으므로 동일한 && 패턴이 해당 패널에서도 작동합니다.
워드프레스 cron
WordPress는 누군가가 사이트를 방문할 때만 예약된 작업을 실행합니다. 안정적인 예약을 위해 내장된 트리거를 비활성화하고 실제 서버 cron 작업에서 wp-cron.php 호출한 다음 동일한 라인에 하트비트 핑을 추가하세요. 이제 일정이 실행되고 완료된다는 사실을 모두 알게 되었습니다.
허위 경보(또는 누락된 경보)를 유발하는 일반적인 실수
- 작업 시작 시 ping을 보냅니다. 그것은 일이 시작되었다는 것을 증명할 뿐입니다. 작업이 성공한 후 마지막에 핑이 표시됩니다.
- 유예기간이 너무 짧습니다. 데이터가 증가하면 작업 속도가 느려집니다. 몇 달에 한 번씩 유예 기간을 검토하세요.
- 시간대를 무시합니다. 서버 시계와 일정이 일치하지 않으면 일일 작업이 한 시간 늦게 보일 수 있습니다. 벽시계 시간이 아닌 예상 간격을 설정하고 첫 번째 실행에서 타이머가 시작되도록 합니다.
- 핑이 너무 자주 발생합니다. 하트비트는 최대 1분에 한 번 실행되는 작업을 위해 설계되었습니다. 같은 분 동안의 추가 핑은 무시됩니다.
- 작업 간에 하나의 하트비트를 공유합니다. 각 작업에는 고유한 URL이 필요합니다. 그렇지 않으면 하나의 정상적인 작업이 중지된 다른 작업을 숨깁니다.
- 유지 관리 중에 일시 중지하는 것을 잊어버렸습니다. 서버를 마이그레이션하는 동안 하트비트를 일시 중지하여 기록에 실제 사건만 표시합니다.
하트비트는 가동시간 확인 다음으로 가장 잘 작동합니다.
하트비트는 귀하의 사이트에서 진행 중인 작업을 알려줍니다. 가동시간 확인을 통해 방문자가 도달할 수 있음을 알 수 있습니다. 함께 그들은 양쪽 절반을 다룹니다. 아직 웹사이트 검사를 설정하지 않았다면 무료로 웹사이트 가동 시간을 모니터링하는 방법 에 대한 가이드를 따르고 거기에 있는 동안 SSL 및 도메인 만료 모니터링을 추가하세요. SSL 검사기 로 지금 바로 모든 인증서를 확인할 수 있습니다.
가장 중요한 작업을 보호하는 데 약 5분 정도 걸립니다. 무료 계정을 만들고, 백업을 위한 하트비트를 추가하고, 그럴 필요가 없도록 계속 지켜보세요.
자주 묻는 질문
cron 모니터링과 가동 시간 모니터링의 차이점은 무엇입니까?
가동시간 모니터링은 외부에서 URL을 확인하여 사이트가 응답하는지 확인합니다. Cron 또는 하트비트 모니터링은 예약된 작업이 체크인될 때까지 기다리고, 해당 작업이 제 시간에 도착하지 않으면 경고합니다.
심박수 모니터링은 정말 무료인가요?
예. 무료 플랜에는 이메일, Slack, Discord, Telegram, Microsoft Teams 및 웹훅 경고 기능이 있는 5개의 하트비트 모니터가 포함되어 있습니다. 신용 카드도 없고 만료되는 평가판도 없습니다.
내 서버에 에이전트를 설치해야 합니까?
아니요. 작업에서는 거의 모든 서버에서 사용할 수 있는 컬이나 wget 등을 사용하여 하트비트 URL에 대해 하나의 HTTP 요청만 하면 됩니다.
유예기간은 얼마나 되어야 합니까?
작업의 정상 실행 시간에 안전 여유를 더한 값으로 설정합니다. 일반적으로 10분 정도 소요되는 작업을 15~20분의 유예 기간으로 처리하는 것이 좋습니다.
하루에 한 번 또는 일주일에 한 번 실행되는 작업을 모니터링할 수 있나요?
예. 1일 또는 7일 등 작업 일정에 예상되는 간격을 설정하면 실행을 놓친 경우 경고가 표시됩니다.