![]() |
[Unit] Errorlog
Liste der Anhänge anzeigen (Anzahl: 1)
Mit der Unit ErrorLog ist es ganz einfach möglich, einen Errorlog für ein eigenes Programm zu erstellen, indem alle Fehler, die in der Anwendung auftreten, geloggt werden. Man muss die Unit unter uses eintragen und sich ganze 3 Befehle merken:
Delphi-Quellcode:
Wie der Name schon sagt dient dieser Befehl zum starten des Protokollierens. Es wird eine Datei namens FileName angelegt, in der der Log gespeichert wird. Existiert die Datei bereits, wird die Liste zuvor noch geladen. Tritt kein Fehler auf, wird die Datei nicht erstellt.
ErrorLog.Start(FileName);
Befehl No. 2 (ihr habt es euch bestimmt schon gedacht :wink: ):
Delphi-Quellcode:
Stoppt die Auflistung der Fehler bis wieder Start aufgerufen wird. Wird Start mit einem leeren String als Parameter aufgerufen, wird der FileName nicht erneuert, was nützlich zur Wiederaufnahme des Protokolls ist.
ErrorLog.Stop;
3. Befehl:
Delphi-Quellcode:
Mit diesem Befehl ist es nun möglich, eigene Nachrichten zu loggen. Unter Flag trägt man quasi die Überschrift der Nachricht ein (z.B. "Info" oder "Warnung"). Msg ist dann die Nachricht, die geloggt wird.
ErrorLog.Write(Flag, Msg);
Anwendung:
Delphi-Quellcode:
ergibt zum Beispiel:
ErrorLog.Write('Info', 'Objekt XYZ wurde erstellt');
Code:
Zusätzlich zu jeder Nachricht (eigene und automatisch geloggte) wird also das aktuelle Datum sowie die Uhrzeit gespeichert.
[24.10.2008 / 17:01:42] [Info] Objekt XYZ wurde erstellt
Vielleicht kann ja jemand die Unit gebrauchen. Mfg |
Re: [Unit] Errorlog
Hi,
klingt ganz gut. Was loggt die Lob Unit denn Alles? |
Re: [Unit] Errorlog
Hat sich erledigt, habs verstanden :-D
|
Re: [Unit] Errorlog
Hallo Robert,
ich finde es etwas unpassend, dass du bei jeder Exception die gesamte Datei neu schreibst. Mit den alten Pascal-Routinen geht das viel besser: Einfach mit Writeln anfügen und dann Flush aufrufen. Eine interessante Ergänzung wäre es, wenn du noch die Möglichkeit bötest, über einen Hook auf HandleOnException und HandleAnyException alle Exceptions zu loggen, also auch die, die bereits durch einen inneren Try-Except-Block abgefangen werden. Außerdem solltest du auch eine Methode veröffentlicht, die es dem Entwickler ermöglicht, eigene Nachrichten zu loggen. |
Re: [Unit] Errorlog
Zitat:
Zitat:
Zitat:
Auf jeden Fall schonmal Danke für die Anregungen |
Re: [Unit] Errorlog
Beliebige Nachrichten. Auch Erfolgsmeldungen kann man loggen. Falls der Entwickler dein Log erweitern will, sollte er dies tun dürfen.
|
Re: [Unit] Errorlog
Zitat:
(Optionale) Flags für Info, Error und Debug. |
Re: [Unit] Errorlog
Ja, vor allem ein Flag für Debug wäre super praktisch. :)
|
Re: [Unit] Errorlog
Nachdem dieser Thread völlig in Vergessenheit geraten ist, habe ich ihn eben wieder entdeckt und dachte mir, ich könnte doch mal die Verbesserungsvorschläge umsetzen, es gibt also eine neue Version der Unit UErrorLog :wink:
Zitat:
Zitat:
Auch die neue Version ist im 1. Post, ich hoffe wiederum, dass sie vielleicht irgendjemand mal gebrauchen kann. Auch Kritik/Verbesserungsvorschläge (evtl. auch Lob? :cyclops: ) sind natürlich immer gerne gesehen :zwinker: |
Re: [Unit] Errorlog
Also ich muss sagen, deine Unit ist echt super. Werde sie direkt in meinem Programm verwenden (wird bald hier in der DP Vorgestellt)...
Super Arbeit! :thumb: Gruß aus Hamburg! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:54 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz