2012-06-26 4 views
7

Einige seltsamen Fehler in der Produktion mit unserer hausgemachten Anwendung in C# mit dem 3.5 Framework geschrieben auftreten. Die Anwendung ist loglos (ich weiß ...) und die Abstürze geben uns selbst in der Ereignisanzeige keine brauchbaren Informationen. Darüber hinaus ist die Fehlerbehandlung schlecht, wenn sie existiert.Debug eine Anwendung in der Produktion

Überprüfen Sie den Code und jagen Sie das Problem in einer Entwicklungsumgebung ist nicht die Lösung, da wir nicht wissen, was das Problem ist.

Wir möchten die Anwendung in der Produktionsumgebung auf „debug“. Wir träumen von etwas wie der Verwendung eines Tools mit dem Feature von Visual Studio Debugger und ILSpy. Das heißt, Schritt für Schritt Ausführung mit demontiertem Code.

Nun, was sind die Lösungen, wenn wir Protokolle oder Fehler keine Anwendung in der Produktion zu debuggen Handhabung?

+3

auf die gleiche Version und Hinzufügen von Protokollierung Wieder bereitstellen es keine Option ist? –

+0

Welche Art von Anwendung ist das? ASP.NET, Windows-Dienst, bereitgestellte Desktop-Anwendung, etwas anderes? – MNGwinn

+2

Wie ich Visual Studio erinnere das Debuggen auf einem Remote-Rechner ausführen kann - nur den Debugging-Dienst auf dem ART-Server starten und Bereitstellen von ‚DEBUG‘ kompiliert Code ... Nasty genug, aber mehr als nichts ... – Tisho

Antwort

8

Siehe How to: Setup Remote Debugging

Edit: Nachdem ich einige der Antworten auf die Hauptantwort zu sehen, setzt mein Vorschlag mit

  • auf den Code mehr Try/Catch-Blöcke hinzufügen.
  • In mehr Prüfung für Null Variablen und Listen
  • Put in mehr Fehlerbehandlung. Machen Sie eine Strategie zum Teilen und Herrschen für diese Situation. Ermitteln Sie, wo sich die Fehler befinden und beginnen Sie mit der Fehlerbehandlung, Protokollierung und allgemeinen Installation, um besseren Code zu ermöglichen.

Wenn Sie diese Elemente tun, wird das Problem in Frage gelöst; für Sie haben jetzt die Werkzeuge, um den Fehler aufzuspüren. ApexTrace (Gewerbe):

+0

Das Remote-Debugging ist die Lösung, die ich suche;) Vielen Dank für Ihre Hilfe. –

+0

@OmegaMan Ausgezeichneter Punkt. – Anarud

1

Sie könnten in diesem Tool interessant sein. Es verfolgt die Ausführung von .NET-Anwendungen in einer Produktionsumgebung und stellt gesammelte Protokolle zur weiteren Analyse bereit.

Verwandte Themen