neuundbesser
Goto Top

Frage zu "Remote-Debugging"

Moin,

ich bin seit ein Paar Monaten in einem Projekt indem ich einfache Themen in JS-Code erledigen muss. Habe mich mittlerweile etwas in das Ganze Drumherum mit den Developer-Tools von Firefox und Chrome eingelesen und nutze die auch zu einem gewissen Grad. Nun möchte ich folgendes probieren, vondem ich nichtmal weiss ob das überhaupt geht: Aktuell schreibe ich JS-Code fertig, übertrage es ins Kunden-Zielsystem, aktualisiere die Website und verfolge in der Console der DevTools nach, was ich zuvor per console.log aus dem Code zu Debuggingzwecken ausgebe. Dazu habe ich die Developer-Tools in der Kundenumgebung offen, was meinen Bildschirmplatz natürlich einschränkt.

Nun meine Idee:
Ich würde gerne die Developer-Tools auf meinem Arbeitsplatz-PC starten und mich damit quasi auf das Kundensystem "verbinden", um auf die Consolen-Ausgabe der Entwickler-Tools auf einem separatem, größerem Bildschirm bearbeiten zu können.

Ich bin KEIN Profi-Entwickler, sondern eher in die JS-Entwicklung "reingerutscht". Daher habe ich nur bedingt Ahnung von den üblichen Vorgehensweisen wie sowas gemacht wird. Mein Favorit ist Firefox, kann aber auch mir Chrome oder sonstwas Brauchbarem arbeiten.

Jeder Hinweis ist herzlich willkomen.

Dank Euch vorab

Content-Key: 643481

Url: https://administrator.de/contentid/643481

Printed on: April 18, 2024 at 05:04 o'clock

Member: michi1983
michi1983 Jan 22, 2021 at 21:46:39 (UTC)
Goto Top
Member: ASP.NET.Core
ASP.NET.Core Jan 22, 2021 updated at 21:55:31 (UTC)
Goto Top
Hi,

Firefox unterstützt Remote Debugging, das kann auch mehr als nur die Konsole anzuzeigen (ein richtiger Debugger eben). Aber das ist nichts was du mal eben aktivierst um dich auf fremde Systeme drauf zu schalten. Das muss aktiviert werden, braucht Portfreigaben (die natürlich nicht übers Internet offen sein sollten) und so weiter und so fort.

Ich nutze Sentry um Fehler zu protokollieren und zu sammeln. Das kann weit mehr, wie z.B. Exceptions/Fehler loggen, sammelt automatisch weitere nützliche Infos über die Umgebung (z.B. Browser, OS), sodass man nachvollziehen kann, ob es Gemeinsamkeiten zwischen einem bestimmten Problem gibt (betrifft nur Firefox bis Version X, Nur User XY oder eben nicht etc). Müssen aber keine harten Fehler sein, du kannst auch normale Logs protokollieren und siehst dann alle Ereignisse pro User/Request.

Lässt sich in nahezu alle gängigen Plattformen einbauen, egal ob nun JS im Browser oder C#, Python, PHP etc im Backend oder auch als Desktop Anwendung. Ein Debugger ist das zwar nicht aber was du beschreibst klingt eher nach solch einem Log-Sammelwerkzeug statt eines echten Debuggers.

EDIT
Hier siehst du mal ein bisschen wie man es nutzt und wie Sentry aussieht im Bezug auf die JS API: https://sentry.io/for/javascript/
Tiefergehende Doku für die gesamte JS API: https://docs.sentry.io/platforms/javascript/
Member: neuundbesser
neuundbesser Jan 22, 2021 at 23:48:04 (UTC)
Goto Top
Hi,

...und Danke für Deine Ansätze.
Hab mir nun Sentry angesehen und das kann schon eine ganze Menge. Allerdings verstehe ich die meisten Dinge davon nicht, da ich wie eingangs beschrieben erst seit Kurzem und auch nur sehr "an der Oberfläche" entwickle.

Mich würde vielmehr eine Methode interessieren, wie ich das mit dem Remote-Debugging zwischen den Firefox ( oder Chrome)-Developer-Tools und dem Webservice des Zielsystems konfiguriere. Sicherheitsaspekte ( Port-Forwardings, Firewall-Regeln, etc. ) sind bekannt und kein Problem, da mir diesbezüglich die Inhouse-IT zur Verfügung steht.

Hab schon versucht danach zu googlen, allerdings bekommen ich nicht mal im Ansatz entsprechend passende Treffer, da ich wahrscheinlich nicht die passenden Suchbegriffe verwende.

Gruß
Member: ASP.NET.Core
ASP.NET.Core Jan 23, 2021 at 01:13:39 (UTC)
Goto Top
Offiziell wird das laut Doku nur noch lokal unterstützt: https://developer.mozilla.org/en-US/docs/Tools/Remote_Debugging/Debuggin ...

Gibt aber wohl Hacks wie man das durch edieren der Config-Parameter selbst aktivieren kann, das Lauschen auf Localhost umgeht er indem er eine Brücke baut die auf jeder Schnittstelle lauscht statt nur localhost: https://embracethered.com/blog/posts/2020/cookies-on-firefox/