Protokollierung in SMath Studio aktivieren
Wenn in SMath Studio ein Problem oder unerwartetes Verhalten auftritt, hilft die eingebaute Protokollierung bei der Diagnose. Die Protokolldatei erfasst detaillierte Ablaufinformationen, mit denen Sie (oder Ihr Softwarehändler) die Ursache ermitteln können.
Voraussetzungen¶
Ermitteln Sie, wo SMath Studio installiert ist:
- Installation für alle Benutzer des Computers: C:\Program Files (x86)\SMath\ (oder ähnlich)
- Installation für einen Benutzer: Ihr Benutzerprofilordner (z. B. C:\Users\<IhrName>...)
Protokollierung aktivieren¶
- Schließen Sie alle Instanzen von SMath Studio. Achten Sie darauf, dass jeder Prozess von SMath Studio beendet ist, bevor Sie die Konfigurationsdatei bearbeiten.
- Wechseln Sie in den Installationsordner von SMath Studio und öffnen Sie die Datei Solver.exe.config mit einem Texteditor (z. B. dem Editor/Notepad). Hinweis: Wurde SMath Studio für alle Benutzer installiert, sind zum Ändern dieser Datei eventuell Administratorrechte nötig. Klicken Sie mit der rechten Maustaste auf Ihren Texteditor und wählen Sie Als Administrator ausführen.
-
Entfernen Sie die Auskommentierung der Protokollierungsblöcke. Die Datei enthält zwei Blöcke, die standardmäßig auskommentiert sind. Entfernen Sie die XML-Kommentarzeichen (
<!--und-->), damit die Konfiguration wirksam wird.Unten sehen Sie den standardmäßigen (auskommentierten) Inhalt — sowohl die Elemente
<source>als auch das Listener-Element<add>stehen in Kommentaren:<?xml version="1.0" encoding="utf-8"?> <configuration> <system.diagnostics> <sources> <!-- The name attribute of <source> element is split by dot in order to build the hierarchy of sources for loggers. The source with name="root" defines the root in the hierarchy. Use attribute newSwitch="true" in order to redefine the switch for the related source and its descendants. Use attribute newListeners="true" in order to redefine the listeners for the related source and its descendants. Supported values of attribute switchValue in order of verbosity: "Off" (default), "Critical", "Error", "Warning", "Information", "Verbose" --> <!-- <source name="root"> <listeners> <add name="file" /> </listeners> </source> <source name="SMath.Controls" newSwitch="true" switchValue="Error" /> <source name="SMath.Environment" newSwitch="true" switchValue="Error" /> <source name="SMath.Document" newSwitch="true" switchValue="Error" /> <source name="SMath.Manager" newSwitch="true" switchValue="Error" /> <source name="SMath.UI" newSwitch="true" switchValue="Error" /> --> </sources> <sharedListeners> <!-- Writes trace to file --> <!-- <add name="file" type="SMath.Manager.Logging.FileTraceListener, SMath.Manager" traceOutputOptions="DateTime,ProcessId,ThreadId" initializeData="%APPDATA%\SMath\Solver.log"/> --> </sharedListeners> <trace autoflush="true" indentsize="4" /> </system.diagnostics> </configuration>Entfernen Sie die Auskommentierung der beiden XML-Blöcke mit der eigentlichen Konfiguration (die Elemente
<source>und das Listener-Element<add>), behalten Sie aber den beschreibenden Kommentar (den ersten Kommentarblock mit erläuterndem Text) bei. Danach sollte die Datei so aussehen:<?xml version="1.0" encoding="utf-8"?> <configuration> <system.diagnostics> <sources> <!-- The name attribute of <source> element is split by dot in order to build the hierarchy of sources for loggers. The source with name="root" defines the root in the hierarchy. Use attribute newSwitch="true" in order to redefine the switch for the related source and its descendants. Use attribute newListeners="true" in order to redefine the listeners for the related source and its descendants. Supported values of attribute switchValue in order of verbosity: "Off" (default), "Critical", "Error", "Warning", "Information", "Verbose" --> <source name="root"> <listeners> <add name="file" /> </listeners> </source> <source name="SMath.Controls" newSwitch="true" switchValue="Error" /> <source name="SMath.Environment" newSwitch="true" switchValue="Error" /> <source name="SMath.Document" newSwitch="true" switchValue="Error" /> <source name="SMath.Manager" newSwitch="true" switchValue="Error" /> <source name="SMath.UI" newSwitch="true" switchValue="Error" /> </sources> <sharedListeners> <!-- Writes trace to file --> <add name="file" type="SMath.Manager.Logging.FileTraceListener, SMath.Manager" traceOutputOptions="DateTime,ProcessId,ThreadId" initializeData="%APPDATA%\SMath\Solver.log"/> </sharedListeners> <trace autoflush="true" indentsize="4" /> </system.diagnostics> </configuration>Tipp: Entfernen Sie die Auskommentierung nur bei XML-Elementen mit verschachtelten XML-Strukturen (den Elementen
<source>und<add>). Reiner Beschreibungstext bleibt als Kommentar stehen. -
Speichern Sie die geänderte Datei Solver.exe.config und schließen Sie den Texteditor.
- Öffnen Sie SMath Studio und führen Sie die Schritte aus, die das Problem ausgelöst haben. Die Anwendung schreibt nun Ablaufinformationen in die Protokolldatei.
- Holen Sie sich die Protokolldatei. Wechseln Sie in den Protokollordner (keine Administratorrechte nötig): %APPDATA%\SMath\ (drücken Sie Win+R, geben Sie den Pfad ein und drücken Sie Enter, um ihn schnell zu öffnen). Die Protokolldatei heißt Solver.log.
- Werten Sie das Protokoll aus. Öffnen Sie Solver.log in einem Texteditor und scrollen Sie zu den letzten Zeilen — in den neuesten Einträgen ist das betreffende Problem in der Regel festgehalten. Ermitteln Sie die Fehler- bzw. Ausnahmemeldung selbst oder hängen Sie die Protokolldatei (oder den aussagekräftigen Ausschnitt) an eine Supportanfrage an Ihren Softwarehändler an.
Protokollierung deaktivieren¶
Wenn das Problem gelöst ist oder das Protokoll weitergegeben wurde, empfiehlt es sich, die Protokollierung wieder auszuschalten:
- Schließen Sie SMath Studio.
- Kommentieren Sie die beiden XML-Blöcke in Solver.exe.config wieder aus (stellen Sie den oben gezeigten Ausgangszustand wieder her).
- Speichern Sie die Datei.
- Löschen Sie bei Bedarf %APPDATA%\SMath\Solver.log, um aufzuräumen.
Hinweis: Bleibt die Protokollierung aktiv, wächst die Datei Solver.log mit der Zeit unkontrolliert, belegt Speicherplatz und kann Dateioperationen verlangsamen. Nach Abschluss der Diagnose den standardmäßigen (auskommentierten) Zustand wiederherzustellen, ist bewährte Praxis.