2016 API

Rüegg Janic

Benachrichtigungssystem für fehlgeschlagene Hintergrundjobs einer Web-basiert Informationsplattform

Durchführung: 18.04.2016 bis 20.05.2016

1. Ausgangslage
Die Schweizerische Nationalbank SNB verfugt uber ein Firmen-internes Werkzeug namens Gallery Portal. Gallery Portal ist eine Webapplikation um Corporate Identity konforme Diagramme und Tabellen zu erstellen und intern zur Verfugung zu stellen. Die Daten fur die Diagramme bzw. Tabellen stammen meistens aus der internen Datenbank, können alternativ jedoch auch aus einer Excel Datei bezogen oder manuell eingegeben werden. Thematisch drehen sich die allermeisten Diagramme im Gallery Portal um ökonomische sowie Volkswirtschaftliche Entwicklungen und werden hauptsächlich fur Berichte, Analysen, Besprechungen und Medienmitteilungen genutzt.
Die Gliederung des Gallery Portal ist der Organisationsstruktur der SNB nachempfunden. So gibt es auf der obersten Ebene des hierarchischen Navigationsbaums drei Einträge, fur jedes Departement einen. Darunter sind jeweils die Abteilungen aufgelistet, welche eigene Grafiken besitzen. Die Grafiken sowie die Struktur unterhalb dieser Ebene werden von einem Mitarbeiter der jeweiligen Abteilung, auch Administrator genannt, selbst gepflegt und verwaltet.
Um den Nutzern des Gallery Portal aktuelle Grafiken bieten zu können, werden die meisten Grafiken regelmässig aktualisiert. Unter Aktualisieren ist hier das laden neuer Daten, sofern vorhanden, und das neu zeichnen der Grafik gemeint. Damit sich der Aufwand der Administratoren und Autoren der Grafiken in Grenzen hält, geschieht dies meist automatisch. Die Aktualisierungen laufen im Hintergrund ab und sind fur die Benutzer nicht sichtbar. Dennoch haben die Benutzer die Möglichkeit entweder den genauen Aktualisierungsverlauf einer Grafik oder alternativ eine Liste mit allen fehlgeschlagenen Datenaktualisierungen anzuzeigen.

2. Ziele der Arbeit
Die aktuelle Lösung ist davon abhängig, dass die Administratoren regelmässig die genannte Liste mit den fehlgeschlagenen Datenaktualisierungen aufrufen, um Probleme rasch erkennen und beheben zu können. In dieser Arbeit sollte deshalb eine Mail basierte Alarming Lösung entwickelt werden, welche die Administratoren uber fehlgeschlagene Datenaktualisierungen so schnell als möglich informiert.
Konkret sollten die Administratoren selbst konfigurieren können ob und an welche Adresse sie die Mails erhalten wollen. Sie sollten grundsätzlich bei einem Fehlschlag benachrichtigt und regelmässig an wiederholt fehlschlagende Datenaktualisierungen erinnert werden. Zudem sollte ein Algorithmus umgesetzt werden, der dafur sorgt, dass die Administratoren nicht von Mails uberflutet werden. Denn bei technischen Fehlern oder nach der Anpassung mehrerer Grafiken können innert kurzer Zeit viele Fehlschläge auftreten.

3. Ergebnis
Das Back-End des Gallery Portal wurde durch einen Job und einen Service ergänzt. Der Job ruft den Service bzw. die entsprechende Methode alle zwei Minuten auf, welche pruft ob seit dem letzten Aufruf eine oder mehrere Datenaktualisierungen fehlschlugen. Falls dem so ist, wird eine Mail versendet um den Administrator zu benachrichtigen. Ist mehr als eine Datenaktualisierung fehlgeschlagen, wird im Mail erwähnt, dass möglicherweise ein technisches Problem vorliegt. Die zweite Methode im Service wird lediglich einmal am Tag aufgerufen und pruft ob es Grafiken gibt, deren Datenaktualisierungen schon mindestens das zweite Mal hintereinander fehlschlugen. Wenn dem so ist wird der Administrator benachrichtigt bzw. an diese Grafiken erinnert. Naturlich erhalten alle Administratoren immer nur Benachrichtigungen fur ihre eigenen Grafiken. Die obige Grafik zeigt den Vorgang als Ganzes: Ein Job aktualisiert regelmässig die Grafiken und erstellt dazu jedes Mal einen Logeintrag, der in der Datenbank abgespeichert wird. Der neue Service der ebenfalls regelmässig von einem anderen Job aufgerufen wird, liest diese Logeinträge aus und versendet anhand von diesen Benachrichtigungsmails.
Im Front-End musste die Benutzeroberfläche erweitert werden. Die Seite welche auch die Liste mit allen fehlgeschlagenen Datenaktualisierungen enthält wurde um ein Modalfenster ergänzt. Das Modalfenster enthält einen kurzen Beschreibungstext zur Benachrichtigungsfunktionalität sowie einen Schalter zum ein- und ausschalten der Benachrichtigungen und ein Textfeld fur die gewunschte Mailadresse. Beim Schliessen des Modalfensters werden die Einstellungen mittels eines REST Calls an das Back-End ubermittelt um dort abgespeichert zu werden.
Das Gallery Portal konnte durch diese Arbeit um eine sinnvolle und direkt einsetzbare Funktionalität erweitert werden. Sowohl die Nutzer als auch die Administratoren profitieren von dieser neuen Alarming Lösung, da allfällige Probleme dadurch schneller erkannt und behoben werden können.