Cron-jobs mislukken stilletjes. Een back-upscript stopt met draaien na een serververplaatsing, een wachtwoordrotatie verbreekt de nachtelijke import, of een volle schijf zorgt ervoor dat de factuurtaak om 3 uur 's nachts crasht. Er is niets down, dus een normale uptime-monitor blijft groen en je komt er pas weken later achter wanneer je de back-up nodig hebt of een klant vraagt waar zijn factuur is. Hartslagmonitoring dicht die kloof. In deze handleiding ziet u hoe het werkt en hoe u het in enkele minuten gratis kunt instellen.
Wat is hartslagmonitoring?
Een regelmatige uptime monitor controleert uw website van buitenaf. Een hartslagmonitor werkt andersom: uw geplande taak wordt ingecheckt. U krijgt een unieke URL en uw taak roept deze elke keer aan als deze klaar is. Als de oproep niet op tijd binnenkomt, weet de monitor dat er iets mis is gegaan en wordt u gewaarschuwd.
Hiermee wordt elke vorm van stille mislukking in één keer opgemerkt:
- De klus is nooit begonnen. Het
crontabis verloren gegaan, de server is opnieuw opgestart zonder de planner of de container is vervangen. - De baan crashte. Een fout stopte het script voordat het het einde bereikte.
- De baan hangt. Het is begonnen, maar zit vast in een vergrendelde database of een trage API en eindigt nooit.
- De hele server is weg. Geen server, geen ping, dus je hoort het ook als er niets anders meekijkt.
Welke geplande taken moet u monitoren?
Begin met de klussen die je het meeste kosten als ze stoppen zonder dat iemand het merkt:
- Back-ups van databases en bestanden. Een back-up die u nooit verifieert, is een back-up die u mogelijk niet heeft.
- Facturatie- en facturatiescripts, abonnementsverlengingen en betalingsafstemming.
- Gegevensimport en synchronisatie tussen uw winkel, uw CRM, uw magazijn of een leveranciersfeed.
- E-mailwachtrijen en nieuwsbrieven die worden verzonden door een schemamedewerker.
- Taken voor certificaatvernieuwing, zoals automatische SSL-verlengingen en opschoontaken die ervoor zorgen dat de schijf niet vol raakt.
- De WordPress- of applicatie- cron die geplande berichten publiceert en onderhoudstaken uitvoert.
Het gratis abonnement omvat 5 hartslagmonitors, wat voldoende is om de kritieke taken van een typisch klein bedrijf of een handvol klantlocaties te dekken.
Hoe u gratis cron jobmonitoring instelt
1. Maak een gratis account aan
Meld u aan voor My Site Alerts met uw e-mailadres. Er is geen creditcard en geen proefperiode.
2. Creëer een hartslag
Open Heartbeats in uw dashboard en kies Heartbeat maken. Geef het een duidelijke naam, zoals Nightly database backup, zodat u precies weet wat er is mislukt.
3. Stel het verwachte schema en een respijtperiode in
Voer bij Verwacht elke hartslag in hoe vaak de taak wordt uitgevoerd: elke 15 minuten, elk uur, één keer per dag. Stel vervolgens de respijtperiode in op ongeveer hoe lang het duurt voordat de taak wordt uitgevoerd, plus een veiligheidsmarge. Een back-up die om 14.00 uur wordt uitgevoerd en doorgaans 20 minuten duurt, heeft een respijtperiode van ongeveer 30 tot 40 minuten nodig, zodat een langzame nacht geen vals alarm veroorzaakt.
4. Kopieer uw hartslag-URL
Elke hartslag heeft zijn eigen geheime URL. Uw taak verzendt elke keer dat deze wordt uitgevoerd een GET- of POST-verzoek. U kunt de URL ook eenmalig in uw browser openen om deze te testen: de hartslag moet naar boven schakelen.
5. Kies waar waarschuwingen naartoe gaan
E-mail werkt out-of-the-box. Ook kun je alerts sturen naar Slack, Discord, Telegram, Microsoft Teams of je eigen webhook, zodat een gemiste run de plek bereikt waar je daadwerkelijk kijkt.
Hoe u de hartslag van uw werk kunt pingen
Linux crontab
Voeg het verzoek toe na uw opdracht, samen met &&, zodat de ping alleen wordt verzonden als de taak slaagt:
0 2 * * * /usr/local/bin/backup.sh && curl -fsS -m 10 --retry 3 https://mysitealerts.com/webhook-heartbeat/YOUR-CODE De optie -m 10 zorgt ervoor dat de krul niet blijft hangen als het netwerk traag is, en --retry 3 verhelpt een kortstondig verbindingsprobleem. Als uw server wget heeft in plaats van curl, doet wget -q -O /dev/null gevolgd door de URL hetzelfde werk.
Binnen een script
Zet de ping op de laatste regel van het script, nadat het echte werk is gedaan. Voeg in een shellscript set -e bovenaan toe, zodat elke mislukte opdracht het script stopt voordat het de ping bereikt. Maak in Python, PHP of Node.js een eenvoudig HTTP-verzoek naar de hartslag-URL als laatste stap van de taak.
Het hosten van bedieningspanelen
Bij gedeelde hosting voegt u dezelfde curl-opdracht toe aan het einde van de cron taak in uw configuratiescherm. In de meeste panelen kunt u een volledige opdrachtregel plakken, dus hetzelfde && patroon werkt daar ook.
WordPress cron
WordPress voert alleen geplande taken uit wanneer iemand de site bezoekt. Voor een betrouwbare planning schakelt u de ingebouwde trigger uit, roept u wp-cron.php aan vanaf een echte server cron taak en voegt u de hartslagping toe aan diezelfde regel. Nu weet u zowel dat het schema wordt geactiveerd als dat het is voltooid.
Veelvoorkomende fouten die valse alarmen veroorzaken (of gemiste alarmen)
- Pingen bij het begin van de taak. Dat bewijst alleen maar dat de klus is begonnen. Ping aan het einde, nadat het werk was gelukt.
- Een te korte uitstelperiode. Banen worden langzamer naarmate de gegevens toenemen. Controleer de respijtperiode elke paar maanden.
- Tijdzones negeren. Als de serverklok en uw planning het niet eens zijn, kan een dagelijkse taak een uur te laat lijken. Stel het verwachte interval in, geen wandkloktijd, en laat de timer bij de eerste run starten.
- Te vaak pingen. Heartbeats zijn ontworpen voor taken die maximaal één keer per minuut worden uitgevoerd; extra pings binnen dezelfde minuut worden genegeerd.
- Eén hartslag delen tussen banen. Elke taak heeft zijn eigen URL nodig, anders verbergt een gezonde taak een andere die is gestopt.
- Vergeten te pauzeren tijdens onderhoud. Pauzeer de hartslag terwijl u een server migreert, zodat de geschiedenis alleen echte incidenten laat zien.
Heartbeats werken het beste naast uptime-checks
Heartbeats vertellen u dat er werk achter uw site plaatsvindt; Uptime-controles vertellen u dat bezoekers het kunnen bereiken. Samen bedekken ze beide helften. Als u nog geen websitecontroles heeft ingesteld, volg dan onze gids over hoe u gratis de uptime van websites kunt controleren en voeg SSL en domeinvervalcontrole toe terwijl u daar bent. U kunt elk certificaat nu controleren met de SSL-checker.
Het duurt ongeveer vijf minuten om uw belangrijkste taak te beschermen. Maak uw gratis account aan, voeg één hartslag toe voor uw back-up en laat ons in de gaten houden, zodat u dat niet hoeft te doen.
Veelgestelde vragen
Wat is het verschil tussen cron -monitoring en uptime-monitoring?
Uptime monitoring controleert een URL van buitenaf om te zien of uw site reageert. Cron- of hartslagmonitoring wacht tot uw geplande taak is ingecheckt en waarschuwt u wanneer deze niet op tijd arriveert.
Is hartslagmeting echt gratis?
Ja. Het gratis abonnement omvat 5 hartslagmonitors met e-mail, Slack, Discord, Telegram, Microsoft Teams en webhook-waarschuwingen. Er is geen creditcard en geen proefperiode die afloopt.
Moet ik een agent op mijn server installeren?
Nee. Uw taak hoeft slechts één HTTP-verzoek naar de hartslag-URL te sturen, bijvoorbeeld met curl of wget, die op vrijwel elke server beschikbaar zijn.
Hoe lang moet de respijtperiode zijn?
Stel deze in op de normale looptijd van de taak plus een veiligheidsmarge. Voor een klus die doorgaans 10 minuten duurt, geldt een uitstelperiode van 15 tot 20 minuten.
Kan ik taken controleren die één keer per dag of één keer per week worden uitgevoerd?
Ja. Stel het verwachte interval in op het schema van de taak, bijvoorbeeld 1 dag of 7 dagen, en u wordt gewaarschuwd wanneer een run wordt gemist.