Einführung in die KNM-Lua-Skriptierung

Kaseya Network Monitor unterstützt die Skriptsprache Lua. Lua ist eine leistungsstarke, ressourcenschonende Programmiersprache, die speziell für die Erweiterung von Anwendungen entwickelt wurde. Mit Lua können Kunden maßgeschneiderte Überwachungsfunktionen erstellen, um Systeme und Geräte zu testen, die von keinem der integrierten Überwachungsmodule unterstützt werden.

  • Neue Überwachungsfunktionen, Aktionen und Ereignisse können in der von Kaseya bereitgestellten Entwicklungsumgebung erstellt und getestet werden, bevor sie exportiert und in Kaseya Network Monitor verwendet werden.
  • Entwicklern steht eine umfangreiche Bibliothek mit vorgefertigten Klassen zur Verfügung, darunter SFTP-Client, HTTP-Client und Dateiverwaltung.
  • Die Entwicklungsumgebung umfasst einen Debugger, die Hervorhebung von Schlüsselwörtern, eine integrierte Hilfe sowie weitere Funktionen, die in modernen Entwicklungstools verfügbar sind.

Enthaltene Skripte

Im Standard-KNM-Installationsprogramm sind eine Reihe von Skripten enthalten. Die Skripte befinden sich im Verzeichnis „script“ im KNM-Ordner. Die enthaltenen Skripte sind ein guter Ausgangspunkt, wenn Sie lernen möchten, eigene Skripte zu entwickeln.

ApacheStatus_.lua
Überwacht die Arbeits-Threads eines Apache-Webservers

BackupExec_.lua / BackupExec_11D_.lua
Überwacht den Abschlussstatus von Sicherungsaufträgen.

CheckCertificateExpiryTime_.lua
Prüft, ob ein HTTP-Zertifikat bald abläuft; der Zeitraum kann in Tagen festgelegt werden.

CiscoIPSecGlobalTunnelBandwidth_.lua
Überwacht die Bandbreitennutzung aller auf einer Firewall geöffneten IPSec-Tunnel.

CiscoIPSecTunnelBandwidth_.lua
Überwacht die Bandbreite eines bestimmten (benannten) IPSec-Tunnels.

iLoHealth_.lua
Überwacht die Zustandsparameter eines HP iLo2-Watchdog-Computers.

PrinterOutOfPaper_.lua
Prüft, ob bei einem an Windows angeschlossenen Drucker das Papier aufgebraucht ist.

WBEM_ESXi_HP_Fan_Status_.lua
WBEM_ESXi_HP_PSU_Status_.lua
WBEM_ESXi_HP_RaidArray_Status_.lua
Überwacht die Hardware-Parameter von VMware ESXi (Zustand von Lüftern, RAID-Arrays und Netzteilen)

Schritte zum Einstieg in die Skriptentwicklung

Zunächst müssen Sie die Lua-IDE herunterladen. Diese ist im Lieferumfang von KNM enthalten. Sie müssen sich lediglich bei der KNM-Weboberfläche anmelden und die Seite „Über“ aufrufen.

Klicken Sie auf den Link „Lua IDE“ und laden Sie das Installationsprogramm herunter. Starten Sie das Installationsprogramm und folgen Sie den Anweisungen auf dem Bildschirm. Sobald die Installation abgeschlossen ist, suchen Sie die Lua IDE im Startmenü und starten Sie sie.

Die geschriebenen Skripte müssen dem Programmiermodell von KNM entsprechen. Um schnell loslegen zu können und das Schreiben von Standardcode zu vermeiden, können Sie eine Skriptvorlage verwenden. Klicken Sie im Menü „Code einfügen“ auf den Menüpunkt „Skriptvorlage einfügen“.

Bevor wir den Debugger starten und diesen Boilerplate-Code testen können, müssen wir einen neuen Host hinzufügen. Ein KNM-Lua-Skript wird immer im Kontext eines Hosts ausgeführt. API-Aufrufe beziehen sich immer auf einen Host, was bedeutet, dass es nicht möglich ist, innerhalb derselben Skriptinstanz Aktionen auf verschiedenen Rechnern durchzuführen. Daher müssen wir vor dem Start einer Debugging-Sitzung immer einen Host auswählen.

Klicken Sie in der Symbolleiste auf „Hostliste öffnen“ und fügen Sie einen Host hinzu, indem Sie ihn in das Textfeld unterhalb der Liste eingeben und auf „Host hinzufügen“ klicken. Sobald der Host hinzugefügt wurde, wählen Sie ihn in der Liste aus und klicken Sie auf die Schaltfläche „Host auswählen“.

Um die soeben in das leere Dokument eingefügten Vorlagenskripte zu testen, klicken Sie auf das Zahnrad in der Symbolleiste oder drücken Sie STRG+F5, um eine neue Debugging-Sitzung zu starten.

Das Skript wird von der IDE genau so ausgeführt, wie es auch von KNM ausgeführt würde; die Benutzeroberfläche wird mithilfe von Standard-Windows-Steuerelementen emuliert.

Um mehr über die Verwendung der IDE und der Lua-API zu erfahren, klicken Sie auf den unten stehenden Link.

Klicken Sie hier, um die Lua-API-Dokumentation zu öffnen.

So stellen Sie ein Skript bereit und verwenden es

Wenn Sie mit Ihrem Skript zufrieden sind, ist es an der Zeit, es auf KNM bereitzustellen.

  1. Das Skript auf Ihrem Computer gefunden
  2. Kopieren Sie das Skript in das Verzeichnis „script“ im KNM-Ordner.
  3. Fertig

Nach der Bereitstellung auf KNM kann es im Lua-Skript-Monitor verwendet werden.

  1. Wählen Sie ein Objekt aus und öffnen Sie dessen Objektinformationsseite
  2. Klicken Sie auf „Neuer Monitor“
  3. Wählen Sie „Lua-Skript“ in der Skriptkategorie aus
  4. Wählen Sie das Skript aus der Dropdown-Liste im Abschnitt „Eigenschaften des Lua-Skript-Monitors“ aus.
  5. Konfigurieren Sie die Skriptparameter
  6. Fertig

Bitte beachten Sie: Wenn Sie ein Skript auswählen, wird die Option zur Auswahl eines anderen Skripts dauerhaft deaktiviert. Sollten Sie ein anderes Skript verwenden müssen, erstellen Sie bitte einen neuen Monitor für dieses Skript.

Ich hoffe, dieses Mini-Tutorial war hilfreich. Die Lua-API eröffnet zahlreiche Möglichkeiten zur Überwachung unternehmensspezifischer Prozesse und Systeme.

Bitte lass uns wissen, wenn du ein Skript geschrieben hast, das du gerne teilen möchtest!

Eine umfassende Plattform für IT- und Sicherheitsmanagement

Kaseya 365 ist die Komplettlösung für die Verwaltung, Absicherung und Automatisierung der IT. Durch nahtlose Integrationen über alle wichtigen IT-Funktionen hinweg vereinfacht sie den Betrieb, erhöht die Sicherheit und steigert die Effizienz.

10 Fakten zum Dark Web, die Sie kennen sollten

10 Fakten zum Dark Web, die Sie kennen sollten

Weiterlesen
10 Fakten über KI und Cybersicherheit, die Sie kennen sollten

10 Fakten über KI und Cybersicherheit, die Sie kennen sollten

Weiterlesen
10 Fakten zu Phishing-Risiken und gefährlichem Verhalten von Mitarbeitern, die Sie unbedingt kennen sollten

10 Fakten zu Phishing-Risiken und gefährlichem Verhalten von Mitarbeitern, die Sie unbedingt kennen sollten

Weiterlesen