Frage

Ich entwickle eine Anwendung in WPF / .NET 3.5, die im Internet heruntergeladen werden kann. Ich bin - nach besten Kräften - das Schreiben von fehlerfreiem Code und Verwendung von Ausnahmen nur bei Bedarf. Meine Erfahrung mit der Softwareentwicklung hat jedoch gezeigt, dass Benutzer immer etwas Seltsames tun können, was eine Ausnahme verursacht, die man sich nie vorstellen konnten. Ich möchte zusätzliche Informationen sammeln, wenn ich eine ungehandelte Ausnahme einhalten muss. Bisher erfasse ich Folgendes:

  • Standardausnahmefelder (Nachricht, Typ, Stacktrace usw.)
  • OS Version
  • .NET -Version
  • Versionen der Anwendungsdlls, die in die Appdomain geladen wurden
  • App -Lizenzinformationen
  • Instrumentierung der letzten vom Benutzer ausgeführten Befehle.

Ich bin sehr bescheiden, dass ich keine "persönlichen" Informationen über den Benutzer erfassen möchte, da ich einfach nicht an so etwas glaube. Daher die Mühe nicht mit der Adresse des Benutzernamens/der Domain/IP -Adresse (Obwohl die Ausnahmeinformationen an einen Webservice geliefert werden, werde ich von Natur aus IP -Informationen erhalten, aber sie kann eine Proxy -Maschine haben.).

Meine Frage

Jeder, der eine Anwendung in der Öffentlichkeit veröffentlicht hat (dh auf Computer, nicht in einer kontrollierten Unternehmensumgebung) - können Sie noch etwas vorschlagen, das nützlich wäre, um die Ursachen von Fehlern aufzuspüren?

Besonders möchte ich keine Informationen sammeln, für die ich nicht verwalten/codieren kann - dh die auf dem PC verfügbare Speicherspeicher oder Art der angehängten Drucker - diese Dinge werden vom .NET -Framework behandelt, und ich sollte nicht wirklich wirklich (Lesen Sie: will nicht) Ich muss meinen Code ändern, um mit den Variationen da draußen fertig zu werden!

Vielen Dank!

War es hilfreich?

Lösung

Ich denke, das sollte genug sein. Sie haben Informationen über die Umgebung, das, was der Benutzer versucht hat, und eines der wichtigsten Debugging -Tools: die Stack Trace.

Wenn Sie nicht über eine Druckerverwaltungsanwendung oder über etwas sprechen, lohnt sich die Druckerinformationen nicht.

Es gibt immer diese Remote -Chance, dass Sie auf einen Fehler stoßen, der aus einer seltsamen Kombination aus Hardware, ausgeführten Diensten, installierten Anwendungen und Mondphase resultiert. Ich denke nicht, dass es sich lohnt, seltene Fehler auf die Benutzerumgebung zu sammeln, nur um mit diesen seltenen Fehlern umzugehen.

Denken Sie daran, eine Möglichkeit zu haben, wie Sie für Fehlerberichte kontaktiert werden können, falls ein Benutzer sein spezielles Problem wirklich behoben benötigt, damit er weitere Informationen dazu bereitstellt und Ihnen helfen kann, diese zu reproduzieren. Abhängig von Ihrer Zielgruppe müssen Sie sich zwischen so etwas wie einem Fehler-Tracker oder einer einfachen E-Mail-Adresse entscheiden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top