Mit der Entwicklung des Java-Ökosystems und der Verbesserung der Benutzerleistungsanforderungen ist eine neue Art von Entwicklungstools entstanden. Sie können sowohl die Fehlerverfolgungsanforderungen erfüllen, die für eine schnelle Bereitstellung in einer schnelllebigen Umgebung erforderlich sind, als auch das Anwendungsverhalten auf einer tieferen Ebene beobachten als herkömmliche Methoden. Kürzlich hat das Softwareanalyseunternehmen Takipi fünf solcher Tools zusammengefasst und vorgestellt.
Raygun ist ein webbasiertes Fehlermanagementsystem zur Verfolgung von Anwendungsausnahmen. Es unterstützt eine Vielzahl von Desktop-, Mobil- und Web-Programmiersprachen, einschließlich Java, Scala, .NET, Python, PHP und JavaScript. Die Hauptfunktionen sind wie folgt:
Fehlergruppierung – derselbe Fehler tritt mehrmals auf innerhalb einer Gruppe angezeigt werden;
Volltextsuche – die Fehlergruppe und alle gesammelten Daten sind durchsuchbar;
Anwendungsaktivität anzeigen – jede Aktion in der Fehlergruppe wird allen angezeigt Teammitglieder, wie Statusaktualisierungen, Kommentare usw.;
Betroffene Benutzer – die Anzahl der von jedem Fehler betroffenen Benutzer
Externe Integrationen – Github, Bitbucket, Asana, JIRA, HipChat; .
Sentry ist eine webbasierte Open-Source-Lösung für die Echtzeit-Ereignisprotokollierung und -Aggregation. Zu den unterstützten Sprachen gehören Ruby, Python, JS, Java, Django, .NET usw. Die Hauptfunktionen sind wie folgt :
Sie können die Auswirkungen neuer Bereitstellungen in Echtzeit anzeigen
Wenn der Benutzerzugriff aufgrund von Fehlern unterbrochen wird, können Sie Sentry-Protokolle verwenden, um ihn zu unterstützen und ihm bei der Wiederherstellung des Zugriffs zu helfen;
Täuschung erkennen und verhindern – Sentry sendet beispielsweise Benachrichtigungen, wenn die Anzahl der Käufe und Authentifizierungszeiten den normalen Bereich überschreitet.
kann GitHub, HipChat, Heroku usw. integrieren.
Takipi ist ein Software as a Service (SaaS)-Modell, das Java-Agenten verwendet, um Codeanalysen durchzuführen und Codeänderungen in Echtzeit zu verfolgen. Der Großteil seiner Analysearbeit wird in der Cloud durchgeführt und unterstützt JVM-Sprachen, einschließlich Java, Scala, Clojure, Groovy, JRuby, Jython usw. Seine Hauptfunktionen sind wie folgt:
Erkennung – alles erfasst und unentdeckt Ausnahmen, HTTP- und Protokollfehler;
Sortiert nach Priorität – wie oft der Fehler im gesamten Cluster auftritt, ob er neuen oder geänderten Code enthält und ob die Häufigkeit zunimmt;
Analyse – Ansicht spezifischer Code und Variablenstatus;
Einfach zu installieren;
Der Systemressourcenaufwand beträgt weniger als 2 %.
Airbrake bietet Benutzern eine webbasierte Oberfläche mit einem Dashboard zur Aufzeichnung von Fehlerdetails und anwendungsspezifischen Ansichten, darunter Ruby, PHP, Java, .NET, Python, Swift usw., die wichtigsten Die Funktionen lauten wie folgt:
Detaillierte Stack-Trace-Informationen, gruppiert nach Fehlertyp, Benutzer- und Umgebungsvariablen;
Verbesserung der Teamproduktivität – Filtern Sie wichtige Informationen aus komplizierten Informationen heraus
Teamzusammenarbeit – sehen Sie, welches Mitglied den Fehler verursacht hat und welches Mitglied ihn behebt;
Externe Integrationen – mehr als 30, einschließlich HipChat, GitHub, JIRA, Pivotal usw.
StackHunter ist ein selbst gehostetes Java-Ausnahmeverfolgungstool, das sich derzeit in der Betaphase befindet. Es kann Entwickler über Ausnahmen benachrichtigen und ihnen helfen, Probleme schneller zu lösen:
Alle Ausnahmen können auf einer einzigen selbstgehosteten Weboberfläche angezeigt werden.
Sammeln Sie Stack-Track-Daten und Kontextinformationen, wie z. B. Ausnahmen, betroffene Benutzer, betroffene Sitzungen usw.;
Versenden Sie sofort Warn-E-Mails, wenn Ausnahmen auftreten.
Ausnahmen basierend auf ihrer Grundursachengruppe freigeben.
Darüber hinaus ist ABRT aus dem Fedora-Ökosystem ein weiteres erwähnenswertes Tool. Dies ist ein automatisches Tool zur Fehlererkennung und -berichterstattung. Der Unterschied zu den oben genannten fünf Tools besteht darin, dass seine Benutzer sowohl Anwendungsentwickler als auch Anwendungsbenutzer sein können. Allerdings befindet sich die Unterstützung für Java-Ausnahmen noch im Proof-of-Concept-Stadium.