Bistoury
ist ein anwendungstransparentes, nicht aufdringliches Diagnosetool für Java-Anwendungen, das von Qunar.com als Open-Source-Lösung bereitgestellt wird und dazu dient, die Diagnoseeffizienz und -fähigkeiten von Entwicklern zu verbessern.
Das Ziel von Bistoury
ist eine Java-Anwendungsdiagnoselösung aus einer Hand, die es Entwicklern ermöglicht, Anwendungen anhand verschiedener Aspekte wie Protokolle, Speicher, Threads, Klasseninformationen, Debugging, Maschinen- und Systemeigenschaften usw. zu diagnostizieren, ohne sich am Computer anzumelden oder Änderungen vorzunehmen das System und verbessern die Leistung der Anwendung und die Fähigkeit, Probleme zu diagnostizieren.
Bistoury
hat die Open-Source-Arthas von Alibaba und die Open-Source-Vjtools von Vipshop auf der Grundlage des ursprünglichen Agenten des Unternehmens integriert, um umfangreichere Funktionen bereitzustellen. Wir danken ihnen für ihre hervorragende Arbeit.
Arthas und vjtools sind bereits hervorragende Tools. Warum müssen wir Bistoury entwickeln?
Arthas und vjtools werden über die Befehlszeile oder ähnliche Methoden verwendet. Es ist unbestreitbar, dass die Befehlszeile in vielen Fällen effizienter ist, aber die grafische Oberfläche hat auch ihre eigenen Vorteile, insbesondere wenn die Parameter komplex sind und einfacher zu verwenden sind effizienter. Basierend auf der Beibehaltung der Befehlszeilenschnittstelle stellt Bistoury den Benutzern auch eine grafische Oberfläche für viele Befehle zur Verfügung.
Arthas und vjtools zielen auf eine einzelne Maschine ab und diagnostizieren das System aus der Maschinendimension, ohne eine globale Perspektive bereitzustellen. Während Online-Anwendungen häufig auf mehreren Maschinen bereitgestellt werden, kann Bistoury in das Anwendungszentrum des Benutzers integriert werden, um das System aus der Anwendungsdimension zu diagnostizieren. , was mehr Möglichkeiten bietet.
Wenn Sie Arthas und vjtools verwenden, müssen Sie sich entweder am Computer anmelden oder der Benutzer muss die entsprechende IP und den entsprechenden Port angeben. Bistoury entfernt verschiedene Einstellungen und stellt einen einheitlichen Webzugang bereit, und Sie können die Anwendung und den Computer auf der Seite auswählen zu verwenden.
Zusätzlich zu diesen gezielten Optimierungen behält Bistoury alle Funktionen von arthas und vjtools bei und bietet darüber hinaus umfangreichere Funktionen.
Die Online-Debugging-Funktion von Bistoury entfernt verschiedene komplexe Parameter, simuliert das IDE-Debugging-Erlebnis und bietet Haltepunkt-Debugging-Funktionen über die Webschnittstelle. Sie kann Informationen an Haltepunkten (einschließlich lokaler Variablen, Mitgliedsvariablen, statischer Variablen usw.) erfassen, ohne die Anwendung zu blockieren. Variablen und Methodenaufrufstapel).
Bistoury bietet eine CPU-Nutzungsüberwachung auf Thread-Ebene, mit der die CPU-Nutzung jedes Threads des Systems auf Minutenebene überwacht und historische Datenabfragen der letzten Tage bereitgestellt werden kann.
Bistoury kann Methoden dynamisch überwachen, die Anzahl der Methodenaufrufe, die Anzahl der Ausnahmen und die Ausführungszeit überwachen und auch die Überwachungsdaten der letzten Tage aufbewahren.
Bistoury bietet eine Protokollanzeigefunktion. Sie können Tail, Grep und andere Befehle verwenden, um die Protokolle einer einzelnen Maschine oder mehrerer Maschinen gleichzeitig anzuzeigen.
Bistoury bietet eine visuelle Seite, auf der verschiedene Informationen zu Maschinen und Anwendungen in Echtzeit angezeigt werden können, einschließlich Host-Speicher- und Festplattennutzung, CPU-Auslastung und -Auslastung, Systemkonfigurationsdateien, JAR-Paketinformationen, JVM-Informationen, Speichernutzung und GC usw.
Vielleicht stehen Sie vor einem schwer fassbaren Online-Problem und sind ratlos. Versuchen Sie es einfach mit dem Schnellbereitstellungsskript von Bistoury und fügen Sie Haltepunkte ein, um mit dem Debuggen zu beginnen.
Die Benutzeroberfläche und der Proxy verwenden Java1.8+ und der Agent verwendet Java1.7+. Da der Agent eine Verbindung zur Anwendung herstellt, muss die Anwendung auch Java1.7+ verwenden. Es ist am besten, die Versionen der Anwendung und zu behalten der Agent konsistent. Klicken Sie hier, um bistoury mit Java11 auszuführen
Unterstützt derzeit nur Linux-Systeme (unterstützt Mac OS)
Jeder ist willkommen, Anfragen zu markieren, zu forken, auszugeben und zu ziehen. Wenn Sie denken, dass es in Ordnung ist, geben Sie ihm einfach einen Stern!
Einige Teile des Frontends wirken etwas unattraktiv und auch die Umsetzung scheint nicht so toll zu sein.
Alle Front-End-Codes werden in Teilzeit von Back-End-Studenten ausgefüllt. Front-End-Experten sind herzlich eingeladen, relevante Codes beizusteuern.
Wenn Sie Probleme bei der Verwendung von Bistoury haben, klicken Sie bitte zuerst hier.
QQ-Gruppe: 717242486
Sehen Sie sich Protokolle über die Befehlszeilenschnittstelle an und nutzen Sie verschiedene Funktionen von arthas und vjtools
Online-Debug, Online-Anwendungs-Debugging-Artefakt
Die CPU-Überwachung auf Thread-Ebene hilft Ihnen, die CPU-Auslastung auf Thread-Ebene zu verstehen
Zeigen Sie JVM-Laufinformationen und verschiedene andere Informationen in der Weboberfläche an
Fügen Sie den Methoden dynamisch Überwachung hinzu
Thread-Dump
Datei-Download
Flammendiagramm
Java-Hotspot-Methode