Om de status van servers en webdiensten te controleren zijn er verschillende diensten beschikbaar, waarbij je kunt denken aan Nagios en SolarWinds. Deze tools moeten eerst geĂŻnstalleerd en geconfigureerd worden voordat ze kunnen monitoren of rapporten produceren en pas dan bieden ze geavanceerde mogelijkheden om IT-systemen te monitoren. Maar als je op zoek bent naar een simpele oplossing voor een basis gezondheidscheck voor jouw online resources, zonder de moeite van het installeren van speciale software, dan is dit het script dat jou zal helpen.
Wat voor een soort script is dit?
Dit is een algemene shell-code met wget-, curl- en awk-commando’s om de gezondheid van servers en webdiensten te monitoren en te rapporteren. Het controleert doorlopend of je resources UP, DOWN of SLOW zijn. Daarnaast houdt het statusveranderingen bij en geeft het een melding wanneer er zo’n verandering optreedt.
Websites en diensten van WSO2 servers worden bij de configuratie gebruikt om het functioneren met deze WSO2 servers te demonstreren.
Welke functies worden er geboden?
- Personaliseerbare Websites en Diensten om te monitoren:
- Monitoring van alle HTTP en HTTPS URL’s, door controle op returncodes met 200-statussen.
- Monitoring van Web-diensten gebaseerd op reactiecodes (voor de controle van de Adminservice van de WSO2 server voert het een check uit voor RUNNING code in de xml-reactie)
- Kan toegepast worden om meerdere websites/diensten te monitoren (niet alleen WSO2 middleware, maar ook andere web-/applicatieservers)
- Controleert de afhandelingsduur van aanvragen voor langzame reacties, niet alleen UP/DOWN
- Verstuurd e-mailnotificaties over statusverandering (UP, SLOW, of DOWN)
- Van/Aan voor e-mailnotificaties zijn instelbaar
- Drempel voor SLOW latency is instelbaar
- Houdt eerdere statusveranderingen en huidige status bij om meerdere notificaties te voorkomen
- Gebruikt een enkel tekstbestand voor gegevensopslag en vereist dus geen database (Instelbaar om afzonderlijke bestanden aan te houden voor Diensten en Websites)
- Geen installatie van agents of speciale software
Hoe kun je dit script gebruiken?
Download of clone deze broncode. Maak configuratiewijzigingen in dit script om de lijst met servers en diensten die je wilt monitoren aan te passen. Als dat staat, kan het vanaf de terminal gerund worden voor een ad-hoc gezondheidscheck of als een Cronjob ingezet worden, een periodieke check met vaste intervallen.
Hieronder een voorbeeld van de e-mailinhoud (output van het script) voor statusveranderingen van servers en webdiensten:
Time: 2018-06-28 00:07:56 Site: https://localhost:9543/console/ Status: DOWN Latency: 0 sec Previous status: UP Previous change: 2018-06-28 00:06:01 Time: 2018-06-28 00:07:56 Service: https://localhost:9443/services/ServerAdmin Status: SLOW Latency: 15 sec Previous status: UP Previous change: 2018-06-28 00:06:02
Ik hoop dat dit je helpt. Aarzel niet om openstaande vragen hieronder in de comments te stellen, want ik help je graag verder.