Komponentenmonitore sind im Wesentlichen Skripte, die regelmäßig auf Ihren Geräten ausgeführt werden - und wenn eine bestimmte Bedingung erfüllt ist, wird ein Alarm ausgelöst. Im ComStore befinden sich beispielsweise vorkonfigurierte Komponentenmonitore für eine Reihe von Antivirenpaketen, die benachrichtigen, wenn Ihre Definitionen veraltet sind oder wenn die Antivirensoftware nicht ausgeführt wird.
Aber so umfangreich diese ComStore-Monitore auch sind (und es gibt zum Zeitpunkt des Schreibens über 40 davon, die Virenschutz, Backups, CPU-Temperaturen, vorhergesagte Festplattenausfälle und viele andere Optionen abdecken), manchmal müssen oder wollen Sie in der Lage sein, Warnmeldungen basierend auf Ihren eigenen spezifischen Anforderungen zu generieren. Zum Beispiel könntest du es wünschen:
- Überwachen Sie ein Backup- oder Antivirenpaket, für das wir derzeit keine ComStore-Komponente haben
- Überprüfen Sie, ob eine bestimmte Datei oder ein bestimmter Ordner vorhanden ist.
- Führen Sie einen Diagnosebefehl (wie dcdiag oder repadmin) aus und überprüfen Sie die Ausgabe auf Probleme oder Ausfälle.
- Abfrage einer Datenbank mit einem Kommandozeilenprogramm (z.B. osql) und Überprüfung bestimmter Werte.
Für Fälle wie diese (und viele andere) bietet das Systems Management eine leistungsstarke Skript- und Alarmfunktion, mit der Sie Ihre eigenen Überwachungsskripte schreiben können - wir nennen diese benutzerdefinierten Komponentenmonitore, und dieses Dokument führt Sie durch die Anfangsphasen des Verständnisses, wie sie funktionieren und wie Sie mit dem Schreiben beginnen können.
Voraussetzungen
Dieser Artikel wird eine Reihe von Scripting-Konzepten abdecken, so dass Sie mit Dingen wie Batch-Scripting oder VBScript vertraut sein müssen.
Erster Schritt - Lokal auf Ihrer Maschine laufen lassen
Bevor wir mit der Art und Weise, wie das Systemmanagement Monitore ausführt und Warnmeldungen basierend auf ihren Ergebnissen generiert, unter die Haube kommen, müssen wir sicher sein, dass das Skript, das wir ausführen werden, das tut, was wir tatsächlich erwarten. Der einfachste Weg, dies zu tun, ist, es zu schreiben, nur um auf einem einzigen Gerät zu laufen, und dann werden wir später mehr Komplexität hinzufügen, wenn wir versuchen, die Ausgabe zu erfassen und Eingabevariablen zu definieren.
Um ein funktionierendes Beispiel zu nennen, werden wir uns eines der oben genannten Szenarien ansehen - das Überwachen auf die Existenz einer bestimmten Datei. Also werden wir ein Batch-Skript schreiben, das nach C:\Test\test\test.txt sucht. Wenn diese Datei existiert, wird das Skript als solche ausgegeben und endet mit dem Exit-Code 0 (was im Grunde genommen "Erfolg" bedeutet). Wenn nicht, sehen wir eine Ausgabe, die es uns sagt, und sie endet mit dem Exit-Code 1 (was "Fehler" bedeutet).
Unser Skript dafür sieht so aus:
Speichern Sie das als Batch-Datei (.bat) und achten Sie darauf, dass Ihr bevorzugter Texteditor nicht versehentlich eine Erweiterung.txt hinzufügt. Wenn Sie es ausführen, sollte es Ihnen eine Ausgabe wie diese liefern (vorausgesetzt, es gibt keine Datei namens test.txt im entsprechenden Ordner):
Erstellen Sie dann die Datei c:\test\test\test.txt und führen Sie sie erneut aus, um zu bestätigen, dass sie auch funktioniert, wenn die Datei vorhanden ist:
Und jetzt haben wir unser Arbeitsskript, das die Existenz einer Datei namens test.txt in C:\test überprüft.
Die Ausgabe in das richtige Format bringen
Wenn das Systems Management konfiguriert ist, um einen benutzerdefinierten Komponentenmonitor auszuführen, ist das, was es wirklich tut, die Ausführung Ihrer Skripte regelmäßig (nach dem Zeitplan, den Sie beim Erstellen des Monitors festlegen werden - mehr dazu später) und dann nach einigen Textausgaben zu suchen, die so aussehen:
wobei "outputvariable" eine Variable ist, die Sie innerhalb der Monitoreinrichtung konfigurieren.
Was das wirklich bedeutet, in Bezug auf die Erstellung Ihres Skripts, ist, dass die Ausgabe mehr als nur eine Textzeile sein muss, die sagt, was der Fehler ist - sie muss jetzt eine Ausgabe erzeugen, die so aussieht wie die oben genannte. Um das zu tun, müssen wir nur unser ursprüngliches Skript ändern, um einen spezifischeren Ausgabeabschnitt für das Systemmanagement zu erhalten:
Sie werden feststellen, dass in diesem Fall die Zeichen und "escaped" werden müssen, damit sie in einer Batch-Datei korrekt geparst werden (andernfalls werden sie so behandelt, als würden sie Daten in einen oder aus einem Befehl leiten). Andere Monitor-Skripttypen müssen dies nicht tun - zum Beispiel wäre das vbs-Äquivalent:
Beachten Sie auch, dass wir den Abschnitt Startergebnis/Endergebnis nicht um die Ausgabe legen müssen, wenn der Test bestanden ist (d.h. wenn die Datei gefunden wird). Das liegt daran, dass wir nur dann einen Alarm auslösen wollen, wenn er nicht vorhanden ist - also übergeben wir die Ausgabe nur dann an den Systems Management Agenten, wenn es ein Problem gibt.Jetzt prüft unser Skript die richtigen Dinge und gibt sie auch im richtigen Format aus. Wir sind also bereit, dieses Skript zu übernehmen und es in das Systemmanagement zu übernehmen und auf einigen Geräten zu verteilen.
Umwandlung unseres Skripts in eine Systems Management Monitor Komponente
Um eine Systems Management Monitor-Komponente mit dem von Ihnen geschriebenen Skript zu erstellen, gehen Sie wie folgt vor:
- Melden Sie sich als Account-Administrator (oder als Benutzer mit den entsprechenden Berechtigungen, um Komponenten anlegen zu können) am Systems Management Web Portal an.
- Klicken Sie auf die Registerkarte Komponenten. Sie gelangen auf einen Bildschirm, der alle in Ihrem Konto enthaltenen Komponenten anzeigt.
- Klicken Sie oben links auf die Schaltfläche Komponente hinzufügen.
- Setzen Sie in dem nun erscheinenden Fenster das Dropdown-Menü Kategorie auf Monitor und geben Sie Ihrer Komponente einen entsprechenden Namen und eine Beschreibung. Klicken Sie dann auf die Schaltfläche Erstellen.
- Scrollen Sie nach unten zum Abschnitt Script des angezeigten Fensters - hier werden wir den eigentlichen Textkörper des Skripts platzieren, das unser Monitor ausführen wird.
- Wählen Sie im Dropdown-Menü Script die Option Batch (da unser Beispielskript hier ein Batch-/Befehls-Shellskript ist). Wenn Sie ein anderes Skript verwenden, wählen Sie hier aus den verfügbaren Optionen den entsprechenden Skripttyp aus.
- Geben Sie Ihr funktionierendes und getestetes Skript in das Hauptfenster dieses Skriptabschnitts ein (oder kopieren/einfügen).
- Als nächstes müssen wir dem Systemmanagement mitteilen, mit welchem Variablennamen wir die Ausgabe erfassen - im Falle dieses Skripts haben wir CSMon_Result verwendet, also müssen wir das als Ausgabedaten konfigurieren. Klicken Sie dazu auf das grüne "+" neben dem Abschnitt Ausgabedaten, und geben Sie im angezeigten Fenster den Namen der Ausgabevariablen als CSMon_Result und den Typ als String an, und klicken Sie dann auf Hinzufügen.
- Klicken Sie auf Speichern, und Ihre Monitorkomponente wird gespeichert und zur Liste Ihrer Kontenkomponenten hinzugefügt, um sie bereitstellen zu können!
Erstellen einer Überwachungsrichtlinie zur Verwendung Ihrer Komponente
Monitore werden über Richtlinien auf Ihre Geräte angewendet, und diese Richtlinien können auf verschiedene Weise auf Ihre Geräte ausgerichtet werden - Filter, Gruppen, Profile (oder eine Kombination davon). Der Einfachheit halber werden wir hier jedes Gerät in unserem AEM-Konto darauf ausrichten, auf die Existenz von test.txt in C:\Test überwacht zu werden.
Um eine Überwachungsrichtlinie zu erstellen, verwenden Sie den benutzerdefinierten Monitor "test.txt" und wenden Sie ihn auf alle Geräte in Ihrem Konto an:
- Klicken Sie im Webportal auf die Registerkarte Konto, dann auf die Unterregisterkarte "Richtlinien" (zweite von rechts)
- Klicken Sie auf die Schaltfläche Neue Kontorichtlinie
- Geben Sie Ihrer neuen Richtlinie in dem erscheinenden Fenster einen entsprechenden Namen und wählen Sie Überwachung aus dem Dropdown-Menü Typ (Sie können die Dropdown-Liste Basierend auf auf Neue Richtlinie beibehalten). Klicken Sie auf Weiter.
- Klicken Sie auf die Schaltfläche Ziel hinzufügen
- In der Dropdown-Liste Zieltyp können Sie wählen, ob Sie diese Richtlinie auf einen Filter (eine dynamische Liste von Geräten, die auf bestimmten Kriterien basiert), eine Gruppe von Geräten oder eine Gruppe von Profilen anwenden möchten. Um dieses Beispieles willen wollen wir unseren Offline-Monitor auf alles anwenden - wir können das mit einem Filter tun, also wählen Sie Benutzerdefinierter Gerätefilter
- Wenn Sie in das Feld Benutzerdefinierter Gerätefilter klicken, um einen Filter auszuwählen, erhalten Sie eine Liste aller Filter, aus denen Sie auswählen können - einschließlich der Standardfilter, die sich in jedem Konto befinden, und aller benutzerdefinierten Filter, die Sie selbst erstellt haben. In diesem Fall wählen wir Alle Geräte - die Liste ist in alphabetischer Reihenfolge, also sollte sie ganz oben stehen. Klicken Sie auf Hinzufügen.
- Klicken Sie nun auf die Schaltfläche Monitor hinzufügen.
- Wählen Sie in der Dropdown-Liste Monitortyp die Option Komponentenmonitor. Klicken Sie auf Weiter.
- Ihre benutzerdefinierte Monitorkomponente wird im ersten Dropdown-Menü auf dem Bildschirm Monitor Details angezeigt - wählen Sie sie aus diesem Dropdown-Menü aus. Hier können Sie auch einstellen, wie oft dieser Monitor ausgeführt werden soll - geben Sie einen entsprechenden Zeitplan ein. Im Moment können wir die Details zu Alert und Auto-Auflösung auf die Standardwerte zurücksetzen. Klicken Sie auf Weiter.
Wenn Sie E-Mail-Benachrichtigungen erhalten möchten, wenn dieser Monitor ausgelöst wird, aktivieren Sie das Kontrollkästchen E-Mail an die folgenden Empfänger und geben Sie Ihre E-Mail-Adresse in das entsprechende Feld ein (denken Sie daran, nach der Eingabe auf Speichern zu klicken).
Klicken Sie dann auf Weiter, bis Sie das Ende der Bildschirme Monitor hinzufügen erreichen. - Klicken Sie nun auf Speichern, um die Erstellung Ihrer Richtlinie abzuschließen.
- Sie befinden sich nun wieder in der Liste der Richtlinien in Ihrem Konto und Ihre neu erstellte Richtlinie in der Liste. Jetzt müssen Sie nur noch auf Änderungen durchsetzen klicken, um diese Richtlinie an die Zielgeräte zu senden...
Wie sehe ich die Ausgabe?
Wenn Sie Ihre E-Mail-Adresse als Alarmempfänger hinzugefügt haben, sollten Sie pro Gerät 1 E-Mail erhalten haben, die so aussieht:
Und Sie können alle ausgelösten Warnmeldungen einsehen, indem Sie im Webportal auf die Registerkarte Konto klicken und dann auf die Registerkarte Monitor gehen.