Automatischer Alarm-Export zu Dritt-Systemen

Sep 14, 2021 | Allgemein, Integration

Im SIGNL4-Webportal können Sie Reports über historische Alarme manuell als CSV-Dateien exportieren. In manchen Fällen kann es sinnvoll sein, Alarm-Daten programmatisch zu exportieren. Zum Beispiel können Sie alle Alarme einschließlich bestimmter Parameter an InfluxDB weiterleiten und die Alarm-Historie in Grafana anzeigen, um Spitzen, Trends und Anomalien im Laufe der Zeit zu erkennen. Sie können sogar AIOps verwenden, um bestimmte Trends automatisch zu erkennen und dann entsprechend zu reagieren.

Über die REST API ist es möglich, Alert-Daten automatisch zu exportieren. Hier stellen wir Ihnen ein Beispielskript zur Verfügung, das dies ermöglicht.

Sie können das Export-Skript automatisch (zum Beispiel stündlich oder täglich) über einen Cron-Job oder über Tools wie Node-RED auslösen.

Benutzung und Beispiel-Code

Achtung! Dieser Code ist als Muster gedacht und nur leicht getestet, ohne jegliche Garantie. Bitte verwenden Sie ihn mit Vorsicht.

Wir stellen ein JavaScript / Node.js-Beispiel-Skript für den Export historischer SIGNL4-Warnungen zur Verfügung. Das Skript verwendet die SIGNL4 REST API wie hier dokumentiert:

https://connect.signl4.com/api/docs/index.html

Als Voraussetzung müssen Sie zunächst Node.js wie hier beschrieben installieren.

Der Beispielcode ist in der Datei „alert-export.js“ enthalten. Sie können die Datei mit dem Kommando node ausführen.

Beispiel für die Kommandozeile:

node export-alerts.js

In der Quell-Datei müssen Sie den SIGNL4-API-Key, den Team-Namen, die E-Mail-Adresse eines Benutzers und den zu exportierenden Datums-Bereich anpassen:

// The SIGNL4 API key.
const strAPIKey = ‚Your-SIGNL4-API-Key‘;
// The team name of the SIGNL4 team.
const strTeamName = ‚Super SIGNL4‘;
// The email address of a user for whom to export the alerts.
// The user needs to be a member of the team. Then all alerts for this team are exported.
const strUserEmail = ‚[email protected]‘;
// Start of the date range to export alerts for.
const strDateFrom = ‚2021-08-01‘;
// End of the date range to export alerts for.
const strDateTo = ‚2021-08-31‘;

Achtung: Alle Zeiten sind UTC-Zeiten.

Sie können den API-Key in Ihrem SIGNL4-Web-Portal unter Teams -> Entwickler erstellen.

Momentan werden die exportierten Alarme als Kommandozeilen-Ergebnis protokolliert. Sie können dies nach Ihren spezifischen Bedürfnissen ändern. Zum Beispiel können Sie die Alarm-Daten in eine CVS-Datei, eine Datenbank, InfluxDB, etc. exportieren.

Sie können Ihren eigenen Export-Code in die Funktion „getAlertDetails“ unten nach „// Add your export code here“ einfügen.

Das Beispiel-Skript finden Sie hier auf GitHub: https://github.com/signl4/signl4-alert-export/.