Blöcke Erstellen
Als nächstes solltest du deine Ausdrücke kennen. Die Verwaltung von Diensten kann eine Vielzahl von Funktionen in die Gleichung einbringen. Wir möchten uns jedoch auf einige wichtige Cmdlets konzentrieren:
Jedes Cmdlet enthält auch einen Modifier, der den Kontext für die Anfrage bereitstellt. Dieser ist durch einen Bindestrich mit dem Cmdlet verbunden, z. B. Get-Service -ComputerName .
Wenn du die Funktionalität deines Servers testen möchtest, kannst du einen Befehl wie Test-HTTP verwenden. Diesen Cmdlets wird die Funktionsschreibweise vorangestellt, sodass die erste Zeile eines Cmdlets wie folgt aussehen kann:
function Test-HTTP {
Funktionen umfassen auch Parameter. Wenn du keine Parameter für deine Server definierst, können deine PowerShell-Skripte nicht zwischen verschiedenen Ausgaben unterscheiden. Diese allgemeinen Funktionen geben allgemeine Ergebnisse zurück. Durch das Definieren von Parametern (wie Computernamen, gute oder schlechte Rückmeldungen) wird sichergestellt, dass deine Monitoring-Ausgabe kontextbezogen informativ ist.
Wenn du eine positive Rückmeldung definieren willst, z. B. einen HTTP-Statuscode, musst du diesen als Ganzzahl ([int]) bezeichnen. Solche Codes können 200 (erfolgreich, OK-Antwort), 202 (akzeptiert, aber wartend) oder etwas anderes sein, das sich auf die Serverfunktionalität bezieht. Da Server letztlich auf API-Anfragen antworten, ist es sinnvoll, eine Überwachungsfunktion zu entwerfen, die korrekte Antworten bestätigt. Du musst auch Zeichenketten ([string]) einfügen, um wichtige Überwachungsobjekte oder Datentypen zu kennzeichnen.
So könnte eine grundlegende HTTP-Antwort-Testfunktion aussehen.
Mit freundlicher Genehmigung von Adam the Automator. "What a basic HTTP response test function might look like."
Du solltest auch Bedingungsanweisungen in deine PowerShell-Funktionen einbauen und validieren. Dadurch wird dein Server angewiesen, bestimmte Ausgaben zu produzieren – wenn der Status true oder false ist. PowerShell befolgt diese Anweisungen entsprechend und gibt ein aussagekräftiges Ergebnis an dich oder dein Team zurück.
Starte mit deinem PowerShell-Monitoring durch
Das Erstellen deiner Überwachungsfunktionen ist Schritt eins. Du musst jedoch auch einen Mechanismus zum Auslösen dieser Überwachungsskripte schreiben. Das aufrufende Skript aktiviert deine relevanten vorgefertigten Funktionen und definiert gleichzeitig alle zusätzlichen Aufgaben, die zur Ausführung anstehen. Dieses Namensschema folgt unserem bisherigen Überwachungsschema:
C:\CallServerMonitors.psl
Die Struktur ist hier extrem wichtig. Du wirst deine verschiedenen Monitore in Hash-Tabellen organisieren, die als kompakte, organisierte Datenstrukturen fungieren. Diese enthalten Schlüssel- und Wertepaare. Du kannst deine Servernamen und Monitornamen definieren. Dieses Aufrufskript kann auch Alerts basierend auf Backend-Ergebnissen auslösen. Auf diese Weise kannst du auch spezifische Regeln nach Wunsch anwenden.
Häufigkeiten und Schlussbetrachtungen
Deine externen Tasks aktivieren diese Kernskripte so oft, wie du es wünschst. Während es sinnvoll ist, einige Serverparameter häufiger zu überwachen, sind andere deutlich weniger unternehmenskritisch. Microsoft betrachtet diese Überwachungsskripte als idiomatisch, da sie stark von Cmdlets und Funktionen abhängig sind.
Das gleichzeitige Ausführen einer großen Anzahl von PowerShell-Überwachungsskripten kann Ressourcen kosten; da sie nicht direkt auf .NET zurückgreifen, nutzen sie die Pipeline. Es ist möglicherweise am besten, Skripte, die häufig ausgeführt werden müssen, und solche, die nicht kritisch sind, zu staffeln. Glücklicherweise wird die inhärent leichtgewichtige Natur deiner Funktionen dazu beitragen, diese Bedenken zu entschärfen.
Diese Beispiele sind nicht erschöpfend. Es gibt noch viele weitere Monitoring-Möglichkeiten – du kannst dich darauf verlassen, dass PowerShell dir den Rücken freihält, wenn es um die Überwachung von Servern geht.