Top Remote Debugging Tools im Jahr 2020

Beim Debuggen ist das von Ihnen verwendete Tool äußerst wichtig und kann bestimmen, wie einfach es ist, Probleme in Ihrem Code zu beheben.

In den frühen Tagen war der Debugging-Prozess eine ziemliche Herausforderung. Mit dem deutlichen Mangel an zuverlässigen Debuggern wandten sich die Entwickler mehreren Hacks zu.

Wenn Sie beispielsweise eine mobile App oder Website debuggen, erstellen Sie Probleme auf Ihrem Desktop neu und verwenden dann Chrome-Entwicklertools und ähnliche Toolkits.

Leider waren diese Hacks nicht so effektiv - Sie mussten ständig von Ihrem Desktop-Browser und Ihrem Mobilgerät hin und her wechseln.

Schneller Vorlauf bis heute, und wir haben eine leistungsstarke Suite von Tools, mit denen Sie fehlerhaften Code debuggen können, der auf einem anderen Gerät ausgeführt wird, als wäre es lokaler Code. Das Beste daran ist, dass diese Remote-Debugging-Tools nicht nur die Debugging-Herausforderungen bewältigen, sondern auch die Zusammenarbeit zwischen Entwicklungsteams verbessern.

In diesem Beitrag habe ich die zehn wichtigsten Remote-Debugging-Tools zusammengestellt, mit denen Sie Ihren Code zuverlässig remote debuggen können.

Rookout

Rookout ist ein Tool, das dem Debugging-Prozess Flexibilität verleiht. Es kann zum Debuggen von JVM-, Node.JS- und Python-Code sowohl in serverlosen als auch in containerisierten Anwendungen verwendet werden.

Das Schöne an Rookout liegt in der Fähigkeit, Benutzern das schnelle und sichere Debuggen von Staging- und Produktionsanwendungen zu ermöglichen. Es eliminiert die langwierigen und komplizierten Debugging-Prozesse, indem alle benötigten Daten in Sekundenschnelle bereitgestellt werden.

Die von Rookout bereitgestellten On-Demand-Daten stellen sicher, dass Entwickler Probleme in ihrem Code verstehen und debuggen können, ohne ihre Anwendungen zu codieren, erneut bereitzustellen oder neu zu starten.

Mit Rookout können Sie Live-Electron-Apps aus der Ferne debuggen. Die gemeinsam nutzbare Oberfläche von Rookout ermöglicht es Entwicklern, in problematischen Electron-Apps ununterbrochene Haltepunkte festzulegen.

Mit dem Tool erhalten Sie einen vollständigen Überblick über die Leistung Ihrer App, sodass Sie Probleme nachverfolgen und geeignete Korrekturen entwickeln können. Rookout macht dies alles möglich, ohne dass eine andere Software auf dem Endbenutzer installiert werden muss

Höhepunkte

  • Einfach loszulegen
  • Nahtlose Git-Integration
  • Integriert in eine Reihe von Tools, darunter Slack, Datadog, Sentry, Sumologic und mehr
  • Funktionen zur Verfolgung von Interaktionen und zur gemeinsamen Nutzung von Bildschirmen
  • Bietet umfassende Debugging-Daten in Echtzeit

Visual Studio-Code

Visual Studio Code ist immer eine Top-Wahl für jeden Entwickler, der mit .NET arbeitet. Es verfügt über eine Vielzahl von Funktionen, die sowohl das lokale als auch das Remote-Debugging erleichtern. Mit diesem Tool können Sie bedingte Haltepunkte und Protokollpunkte festlegen.

Sie können damit auch Variablen überprüfen. Für das Remote-Debugging müssen Sie das VS Code Remote Development-Erweiterungspaket installieren. Dieses Paket enthält drei Erweiterungen, die alles bieten, was Sie zum Starten, Überwachen und Beschleunigen Ihrer Remote-Debugging-Schleife benötigen.

Höhepunkte

  • Kostenloser, plattformübergreifender Betrieb
  • Hochaktive Entwicklergemeinschaft mit Microsoft-Unterstützung
  • Integrierte Git-Steuerung
  • Unterstützt eine Vielzahl von Erweiterungen und Anpassungsoptionen zur Verbesserung des Workflows
  • Die automatische Fehlerprüfung und Farbcodierung ist großartig

RubyMine

RubyMine ist eine leistungsstarke und intelligente plattformübergreifende IDE, mit der Sie Ruby on Rails, CoffeeScript, JavaScript, CSS, ERB und HAML und mehr debuggen können. Mit dem fortschrittlichen integrierten Debugger können Sie problemlos Haltepunkte festlegen und Trefferbedingungen definieren.

RubyMine von JetBrains bietet zwei Möglichkeiten zum Debuggen von Anwendungen, die auf Remote-Geräten ausgeführt werden. Zuerst können Sie den Remote-Ruby-Interpreter hinzufügen und Zuordnungen zwischen lokalen und Remote-Projektdateien konfigurieren. Anschließend können Sie Ihre Debugging-Sitzung starten.

Alternativ können Sie Anwendungen auf dem Remote-Gerät ausführen und dann den Ruby-Interpreter hinzufügen.

Konfigurieren Sie anschließend die Zuordnungen zwischen Dateien und binden Sie sie an einen laufenden Prozess. Letzteres ist besonders hilfreich beim Debuggen einer Anwendung, die Sie nicht direkt von Ihrer IDE aus starten können.

Ein weiteres großartiges Merkmal dieses Tools ist, dass Sie mehrere Debug-Prozesse gleichzeitig starten können.

Höhepunkte

  • RubyMine basiert auf der soliden IntelliJ IDEA-Plattform
  • Gute Unterstützung für rubinbezogene Frameworks und Technologien
  • Die Autovervollständigungsfunktion ist ziemlich gut
  • Gute Git-Integration.
  • Unterstützt mehrere Plugins
  • Integriert sich nahtlos in Schienen

PyCharm

PyCharm ist eine weitere robuste IDE, die von JetBrains für Python entwickelt wurde. Dieser intelligente Code-Editor ist mit Remote-Entwicklungsfunktionen ausgestattet, darunter Ausführen, Testen, Debuggen, Bereitstellen und Anwendungen auf virtuellen Maschinen und Remote-Hosts.

Der Debugger bietet mehrere Haltepunkte, Rahmenansicht, Uhren, Schrittmodi, Remote-Interpreter und eine Debug-Konsole.

Zu den erstaunlichen Funktionen von PyCharm gehören eine ausgefeilte automatische Vervollständigung, hervorragende Refactoring-Unterstützung und eine nahtlose Integration in Tools wie Django, IPython, Docker, Vagrant und Pytest.

Darüber hinaus ist PyCharm ein wunderbares plattformübergreifendes Entwicklungstool. Anders als Python werden JavaScript, Cython, CoffeeScript, TypeScript SQL, HTML / CSS, Node.js, AngularJS und mehr unterstützt.

Höhepunkte

  • Hervorragende Konnektivität mit mehreren Datenbanken zum Abfragen innerhalb der IDE
  • Das Suchen und Installieren von Paketen ist einfach
  • Automatische Code-Vervollständigung
  • Git-Visualisierung
  • Zeigt Codefehler im laufenden Betrieb an und erleichtert die Behebung

GDB

GDB kann effektiv zum Debuggen von Programmen auf einem anderen Computer verwendet werden. Um ein Remote-Debugging durchzuführen, müssen Sie das GDB-Dienstprogramm auf dem Hostsystem ausführen. Darüber hinaus müssen Sie gdbserver auf dem Zielsystem ausführen, damit die beiden Dienstprogramme über ein Netzwerk oder eine serielle Leitung unter Verwendung des seriellen GDB-Remote-Protokolls kommunizieren.

Es gibt zwei Konfigurationsoptionen für das Remote-Debugging mit GDB / gdbserver. Der erste besteht darin, den Remote-GDB-Server zu verwenden, um automatisch Anwendungscode zu erstellen und auf den Remote-Computer hochzuladen.

Die zweite Option ist die Verwendung des GDB-Remote-Debugs, bei dem Sie die ausführbaren Dateien haben sollten.

Höhepunkte

  • Einfach zu verwendende und im Fehler nachverfolgbare Fehler
  • Plattformübergreifende und umfassende Sprachunterstützung
  • Wirksam für die Core-Dump-Analyse

Finsternis

Eclipse ist eine renommierte IDE für die Java-Entwicklung, die auch Sprachen wie Python, Ruby, C # und PHP unterstützt. Die Eclipse-IDE verfügt über erweiterte Funktionen für die Entwicklung und das Debuggen und ist damit ein umfassendes Tool.

Eine der beeindruckendsten Funktionen von Eclipse ist die Debug-Perspektive der Plattform, in der detaillierte Debug-Informationen wie Haltepunkte, Variablen, Aufrufstapel und Threads nebeneinander angezeigt werden.

Mit Eclipse können Sie die Programmausführung schrittweise durchlaufen, Threads anhalten und fortsetzen, Ausdrücke auswerten und Werte überprüfen. Das Verwalten von Remote-Debugging-Konfigurationen unter Eclipse ist recht einfach und unkompliziert, wodurch das Tool bei Entwicklern immer beliebter wird.

Höhepunkte

  • Automatische Code-Vervollständigung
  • Gute Refactoring-Unterstützung
  • Hervorragende Navigationsfähigkeit
  • Hilft bei der Syntaxprüfung auf sauberen und effizienten Code
  • Git-Integration

Zend Studio Debugger

Das Zend Studio ist eine professionelle IDE, die das Bearbeiten, Testen, Debuggen und mehr von PHP-Code unterstützt.

Es ist eng in den Zend-Server integriert und schafft so eine vollständige PHP-Umgebung, die eine einfachere Analyse der in Staging- und Produktionsumgebungen festgestellten Probleme ermöglicht.

Zend bietet auch eine PHP-Erweiterung, die Benutzer auf Webservern installieren können, um PHP-Skripte zu debuggen. Die Verwendung von Zend zum Debuggen ist relativ einfach - Sie müssen nur den Quellcode öffnen, Haltepunkte im Projekt festlegen und eine Debug-Sitzung ausführen.

Remote-Debugging auf Zend kann auf drei Arten durchgeführt werden. Die erste Option ist die Verwendung der Debug-URL-Funktionalität in Zend Studio.

Zweitens können Sie die Funktion Debuggen als Webseite in Zend Studio verwenden. Und schließlich mithilfe der Zend-Browser-Symbolleiste in Firefox oder Chrome.

Höhepunkte

  • Möglichkeit, Projektdateien mit nur wenigen Tastenanschlägen zu durchsuchen
  • Hocheffiziente und schnelle Plattform
  • Große Community-Unterstützung
  • Ideal zum Erstellen und Debuggen von PHP-Anwendungen
  • Das Framework ist außergewöhnlich flexibel

WinPdb

WinPdb ist ein ausgezeichneter Python-Debugger, der auf Windows-, Mac OS- und Linux-Systemen gut funktioniert. Es ist sowohl mit Python 2.x als auch mit Python 3.x kompatibel.

Dieses Debugging-Tool unterstützt intelligente Haltepunkte, Namespace-Änderungen, mehrere Threads, eingebettetes Debugging und verschlüsselte Kommunikation. Für das Remote-Debugging müssen Sie rpdb2.py (Winpdbs Befehlszeilen-Debugger) auf den Remote-Computer kopieren.

Wenn Sie fertig sind, starten Sie das Python-Skript mit dem Debugger auf dem Remotecomputer. Starten Sie auf Ihrem lokalen Gerät die GUI und hängen Sie das Skript zum Debuggen an. Zu diesem Zeitpunkt können Sie den Basisnamen oder den vollständigen Pfad des Skripts auf dem Remote-Gerät verwenden. Weitere Informationen zum Debuggen von Python-Skripten mit Win PDB finden Sie hier.

Höhepunkte

  • Unterstützt Multithread-Debugging
  • Verschlüsselte Kommunikation für Remote-Debugging
  • Schneller als PDB
  • Einfach zu bedienende GUI mit Haltepunkten, Stapel- / Variablenprüfung und mehr

Verwenden Sie die oben genannten Tools, um Ihr Remote-Debugging-Erlebnis zu verbessern. Viel Spaß beim Codieren!