Wenn ich Delphi 7 benutze, frage ich mich, ob es eine kostenlose Komponente gibt, die Diagnoseinformationen sammelt, wenn meine Anwendung auf einer entfernten Site läuft und mir hilft, Fehlerberichte zu debuggen.
Vielleicht zeichnet es jeden ausgewählten Menüeintrag, Steuerung geklickt, Texteingabe usw. auf? Vielleicht wirft es den Stapel einfach bei einem Absturz ab. Vielleicht macht es etwas anderes ...
Es macht mir nichts aus, Code hinzuzufügen (z. B. am Anfang und am Ende jeder Prozedur), da dies nützlichere Informationen als ein vollautomatisches System erzeugen könnte.
Ich bin nicht sicher, ob die Lösung "nach Hause telefonieren" sollte oder ob es ausreicht, um eine Textdatei zu erstellen, die mir per E-Mail geschickt werden kann.
Irgendwelche Vorschläge?
Ich benutze EurekaLog Ссылка
Es führt den Call-Stack, Speicherinhalte, andere laufende Apps, eine gute Beschreibung der Maschine, OS, Patches, etc .., Es kann (mit Benutzerberechtigung, und wenn konfiguriert, um so) einen Screenshot zu machen, fragen der Benutzer für die Eingabe (was hast du gemacht, als es abgestürzt ist?), etc .. Es kann den Dump per E-Mail senden, auf http, Post direkt an Bug-Tracker wie Mantis und FogBugz, oder lassen Sie es einfach auf dem System. Es ist großartig und gut unterstützt.
Hier ist auch ein Link zu einer ähnlichen Frage Vergleichen Sie Delphi Exception Handlers
mit dem Crash-Debugging werfen Sie einen Blick auf MadExcept
Ссылка
madExcept wurde entwickelt, um Sie bei der Suche nach Abstürzen in Ihrer Software zu unterstützen. Wann immer es einen Absturz / eine Ausnahme in Ihrem Programm gibt, fängt madExcept es automatisch ab, analysiert es, sammelt viele nützliche Informationen und gibt dem Endbenutzer die Möglichkeit, Ihnen einen vollständigen Fehlerbericht zu senden.
frei für nicht kommerzielle Nutzung, kostengünstig für kommerzielle Nutzung
oder JclDebug aus der JEDI Code Library
Ein Blog, der darüber berichtet, kann hier gefunden werden Ссылка
EDIT: Dies scheint ein sehr gutes Beispiel zu sein, wie man JCLDebug benutzt Ссылка
Haben Sie sich den Open-Source-JclDebug von Project Jedi angesehen? Hier ist ein schöner Kurzbericht zu JclDebug .
Stellen Sie sich vor, Sie könnten eine detaillierte Beschreibung erhalten Fehlerbericht enthält einen vollständigen Fehler Callstack, wo der Fehler aufgetreten ist kombiniert mit Informationen über die Datei und Zeilennummer. Dieser Bericht könnte sein direkt auf den Benutzern generiert Computer und per E-Mail an Sie gesendet werden oder direkt über das Internet, mit a benutzerdefiniertes Verfahren - auch direkt Erstellen von Einträgen in der bugtracking-tool verwenden Sie.
Dies und mehr wird durch die ermöglicht Projekt JEDI - genauer, die JCL-Teilprojekt mit seinem JclDebug-Framework. Wenn du. .. hast abgeschlossen die Installation der Paket, eine neue Menüoption namens "Inser JCL Debug Data" wird hinzugefügt zum Projekt-Menü Ihres Delphi-IDE.
Es gibt eine großartige Delphi-Portierung des bekanntesten OpenSource-Logging-Frameworks, das in Java, Log4J, geschrieben wurde: Es heißt Log4Delphi.
Ich habe es heruntergeladen, erweitert und mit meinen Projekten erfolgreich eingesetzt.
Beste Eigenschaften: Opensource, Apache-Lizenz, sehr gut dokumentiert, einfach zu erweitern, Power-Design: Mit dem Appender-Konzept können Sie Ihren eigenen Appender erstellen und damit Logging-Daten von einem entfernten Kundencomputer senden zu Ihrem Hauptsitz mit UDP-Protokoll .
Probieren Sie es aus und lassen Sie es mich wissen: -)
PS: Das Projekt scheint eingestellt zu werden, aber es ist ausgereift und ich habe es ohne Speicherüberlastung und CPU-Overhead-Probleme verwendet.
Das log4Delphi-Projekt ruht seit 4 Jahren, aber ich habe Zugriff auf das schlafende Log4Delphi-Projekt erhalten, und ich habe 4 Jahre Bugfixes und Patches in die neueste 0.8-Version von Source-forge integriert. Ich benutze diese Bibliothek in der Produktion und habe festgestellt, dass sie sehr stabil und zuverlässig und einfach zu bedienen ist.
Tags und Links delphi logging error-handling remote-debugging