Sensing Clues ist eine niederländische NGO, die in Partnerschaft mit verschiedenen Organisationen branchenführende Technologien zur Schaffung und Erhaltung von sicheren Rückzugsgebieten in der Natur für Tier und Mensch nutzt. Für gemeinnützige Organisationen sind bei neuen Technologien die Kosten ein wesentlicher Faktor, und bei einem kleinen Team wie unserem, das aus freiwilligen Helfern besteht, ist auch Zeit immer Mangelware. Damit wir beides in den Griff bekommen konnten, mussten wir eine bessere Vorstellung davon bekommen, was eigentlich in unserem Tech-Stack vor sich geht. Wir brauchten endlich Zugriff auf wichtige Daten und die Möglichkeit, Alerts gezielt zu konfigurieren, damit wir uns nicht ewig mit irrelevanten Warnmeldungen herumschlagen. 

Wenn früher etwas schieflief in unserem Tech-Stack, riefen unsere Benutzer:innen uns an. Das war in der Anfangsphase noch überschaubar, als es noch ein Pilotprojekt war. Aber mit zunehmender Kundenanzahl mussten wir skalieren und der bisherige Ansatz war keine Option mehr. Wenn unsere Tools nicht funktionieren, ist das für unsere Kund:innen vor Ort ein echtes Problem, weshalb wir uns nach einer Monitoring-Lösung umsahen – damit wir über eventuelle Fehler proaktiv informiert werden und sie im Idealfall von vornherein verhindern können. Wir brauchten eine Softwarelösung, mit der wir Daten abfragen, grafisch darstellen und analysieren konnten. Vor New Relic hatten wir eigentlich keine Ahnung, wie es unserer Software oder Plattform geht. 

Die Sensing Clues-Plattform umfasst mehrere Anwendungen, auf deren Basis wiederum die mobile Cluey-App für den Vor-Ort-Einsatz läuft. Diese stützt sich auf MarkLogic, Nginx, NextCloud und Keycloak. Mit der App können Benutzer:innen den Zustand des Areals managen, z. B. indem sie Wildtiersichtungen oder den Zustand von Parkanlagen dokumentieren. Um die Benutzer-Journey in unserer App nachzuverfolgen, wollten wir Distributed Tracing nutzen, denn damit lassen sich Service-Anfragen in verteilten Systemen verfolgen und beobachten. Zudem konnten wir damit sicherstellen, dass die richtigen Agents ausgeführt wurden, und die Erfassung irrelevanter Daten begrenzen. Und Synthetic-Testing erleichtert uns die proaktive Validierung der Benutzerinformationen.

Der gesamte Informationszyklus in der Sensing-Clues-Plattform

Einrichten schlüssiger und relevanter Alerts

Als Erstes haben wir mit New Relic Alerts eingerichtet. Das war ein relativ simpler Vorgang, der sich enorm ausgezahlt hat. E-Mail verwenden wir kaum, deshalb war die Slack-Integration für uns perfekt. Wir haben zwei spezielle Slack-Channels für Alerts. Im ersten erfahren wir, ob ein Fehler aufgetreten ist, wir müssen also nicht ständig alles im Blick behalten. Tritt ein Fehler auf, erscheint ein Alert. Unser zweiter Channel ist speziell für Anomalien. Ein Beispiel für eine Anomalie wäre, wenn der Anwendungs-Traffic plötzlich ansteigt oder abfällt. Als Operations Manager sehe ich mir in der Regel beide Channels an, und bei dringenden Sachen setzen wir mit dem Team einen Call an. Für echte technische Notfälle haben wir eine WhatsApp-Gruppe – die wir aber seit über einem Jahr nicht mehr benutzen mussten, seit wir die Alerts eingerichtet haben.

Dashboards für die Infrastruktur-Performance

Dashboards liefern uns einen guten Überblick über die Umgebungen, mit denen wir arbeiten, und zeigen uns unter anderem, wie Benutzer:innen unsere App einsetzen. Wir haben eine Produktions- sowie eine Testumgebung und zusätzlich noch eine Umgebung für die Data-Science-Projekte, und alle sind von Dashboards abgedeckt. So können wir schon in der Testumgebung eventuelle Codefehler beheben und Probleme im Vorfeld aus dem Weg räumen. 

Unsere App wird von Naturschützer:innen rund um den Globus zur Erfassung und Beobachtung von Daten zu gefährdeten Tierarten genutzt. Mit New Relic sehen wir, was sie sehen und wie sie unsere App verwenden – und was bei der Benutzung zu Ärgernissen führen kann. Das erleichtert uns die Erkennung bestimmter Muster und die Behebung der zugrunde liegenden Probleme. Denn wenn die Nutzung einer bestimmten Funktion plötzlich nachlässt, kann es sein, dass etwas damit nicht in Ordnung ist.

Dashboards zeigen uns die Performance unserer Infrastruktur, also z. B. Speicher und Throughput. Bei der Migration haben uns die Dashboards ebenfalls enorm geholfen und uns gezeigt, wie wir am besten eine neue Umgebung anlegen sollten. Bei Problemen können wir genau die Ursache sehen. Und wir haben Baselines angelegt, z. B. erhalten wir einen Alert, wenn die Speichernutzung einen bestimmten Wert übersteigt.

Unsere App ist sehr einfach zu bedienen. Schulungen für neue Benutzer:innen finden entweder als halbtägige Veranstaltungen vor Ort statt oder als kurzer Onlinekurs. Die Benutzerfreundlichkeit und User Journey sind wirklich wichtig für uns, denn wir möchten, dass Organisationen ihre Zeit nicht darauf verwenden, die Technologie zu verstehen, sondern sofort mit dem Loggen der Daten beginnen können. Je nachdem, wo die Leute gerade sind, kommt es auch oft zu Konnektivitätsproblemen – beispielsweise, wenn ein Team zehn Tage lang irgendwo ohne Internetverbindung arbeitet. Deshalb müssen alle Informationen, also die Logs, zunächst auf dem Smartphone gespeichert werden. Wenn wieder eine Internetverbindung besteht, werden sie dann hochgeladen.

Im Laufe der Zeit haben wir mehr übers Monitoring gelernt und darüber, was Observability alles kann, und nutzen inzwischen viel mehr Warnmeldungen und Status-Dashboards. So beschränkt sich der Nutzen für uns nicht mehr darauf, über die schwerwiegendsten Probleme informiert zu werden, sondern wir haben eine viel bessere Vorstellung davon, wie unsere Plattform eigentlich eingesetzt wird.

Leider ist es ja oft so bei Tools wie New Relic, auch wenn sie wirklich hilfreich sind, dass sie nie Priorität haben, weil es immer tausend andere Dinge zu tun gibt. Besonders, wenn man kein Monitoring-Profi ist. Es fehlt einfach die Zeit. Deshalb sind wir so froh über die ehrenamtliche Unterstützung durch die New Relic Mitarbeiter:innen, die an dem Programm teilnehmen. Das lenkt unseren Fokus darauf, uns ein, zwei Wochen lang wirklich mit Observability auseinanderzusetzen, und wir können auf den Support durch Profis zählen, die uns erklären können, was wir zu tun haben. Ohnehin ist New Relic so intuitiv – man muss wirklich kein IT-Spezialist sein, um von den Vorteilen zu profitieren.