vRealize Log Insight Event via PowerShell erzeugen

Wenn man in seiner Umgebung ohnehin auf VMware vRealize Log Insight als Syslog Server setzt und damit im optimalen Fall ein zentrales Ziel aller seiner Events hat, kann es auch sinnvoll sein aus seinen Scripten heraus bei Bedarf ein vRealize Log Insight Event via PowerShell zu erzeugt.

Dies kann z.B. die bessere Alternative für ein Logfile im PowerShell Script sein und man hat damit in jedem Fall auch automatisch eine zentrale Alerting Möglichkeit plus saubere Nachvollziehbarkeit und einen zeitlichen Verlauf.

Die grundlegende API hierfür hat natürlich Steve Flanders bereits in seinem Blog Artikel Log Insight: Using the Ingestion API sehr schön ausgeführt.
Eine weitere tolle Implementation dieses Vorgehens hat auch Cody Hosterman in seinem Post Using PowerShell with the VMware Log Insight REST API dargestellt.

Die offizielle Doku der Ingest API ist hier zu finden.

vRealize Log Insight Event via PowerShell

Der Befehl

Push-vLIMessage -vLIServer "loginsight.lan.local" -vLIAgentID "12862842-5A6D-679C-0E38-0E2BE888BB28" -Text "My Test" -Hostname MyTEST -FieldName myTest -FieldContent myTest

 

PARAMETER vLIServer
Specify the vLI FQDN
 PARAMETER vLIAgentID
Specify the vLI Agent ID
 PARAMETER Text
Specify the Event Text
 PARAMETER Hostname (Optional) Default: lokaler Hostname
Specify the Hostanme displayed in vLI
 PARAMETER FieldName (Optional)
Specify the a optional Field Name for vLI
 PARAMETER FieldContent (Optional)
Specify the a optional FieldContent for the Field in -FieldName
If FielName is missing and FielContent is given, it will be ignored

Das Event

In der interaktiven Analyse von vRealize Log Insight kann sehr schnell nach dem Feld „ps_vlimessage“ mit dem Wert „true“ gefiltert werden um die Ereignisse aus der Funktion zu erhalten.

vRealize Log Insight Event via PowerShell - Das Event

Ein Dashboard

Je nachdem was man mit dem optionalen Zusatzfeld noch macht, kann dann natürlich ein weiteres Dashbord in vRealize Log Insight ganz sinnvoll sein.
Hier im Beispiel werden beistimmte AD Gruppen via PowerShell überwacht und ein Event daraus generiert wenn sich die Mitgliedschaften ändern.

Dash

Die Funktion

Um das generieren von vRealize Log Insight Events unkompliziert in meinen Skripten nutzen zu können, habe ich mir eine PowerShell Funktion geschrieben. Die Parameter dieser habe ich bereits etwas weiter oben aufgelistet.

Abschlißent möchte ich noch auf das absolut geniale vRealize Log Insight PowerShell Modul von Luc Dekens hinweisen. Damit können dann die Events auch wieder aus vLI ausgelesen werden um z.B. wieder darauf zu regieren bzw. diese weiter zu verarbeiten.

Nun auch in der PowerShell Gallery

Um die Nutzung noch etwas zu vereinfachen habe ich das Script zusätzlich zu einem PowerShell Modul erweitert in in der PowerShell Gallery veröffentlicht.

PowerShell Module

Leave a Reply