| Ihre Fragen und Anregungen: |
|
|
|
|
|
|
 |
|
|
|
 |
OcfLogger 4.70
|
 |
ORCUS® OcfLogger 4.70 ist ein Logger auf Basis eines COM-Servers für
Win32-Plattformen. OcfLogger bietet Ihnen eine einheitliche Basis zum
Loggen Ihrer Anwendungsdaten im XML-Format.
|
|
|
|
|
|
 |
Wieso Sie OcfLogger einsetzen sollten
|
 |
|
 |
Eine Lizenz - viele Plattformen
|
 |
Da OcfLogger als COM-Server realisiert ist, können Sie OcfLogger
für die meisten Entwicklungsplattformen bzw. Programmiersprachen
unter Microsoft Windows einsetzen. Einzige Voraussetzung ist deren
Unterstützung von nativen COM-Interfaces oder von
COM-Dispatch-Interfaces. Dies ermöglicht Ihnen eine einheitliche
Nutzung selbst aus Scripting-Sprachen, wie Javascript oder VB-Script,
genauso wie aus C++-Anwendungen.
|
|
|
|
 |
|
 |
Customizing durch Templates
|
 |
|
|
|
 |
Unsere Default-Templates legen Logeinträge als XML-Fragmente an.
|
|
 |
Der Aufbau der Templates kann von Ihnen individuell angepasst
werden (bis hin zum vollständigen Verzicht auf XML-strukturierte
Daten).
Die Strukturierung durch XML-Fragmente eröffnet uns und Ihnen
neben einer unbegrenzten Flexibilität beim Loggen der Daten auch
äußerst effiziente Auswertungs- und
Reportingmöglichkeiten.
|
|
|
|
|
|
|
 |
|
 |
Systeminformationen inklusive
|
 |
|
|
|
 |
Auf Wunsch reichert OcfLogger Ihre Logging-Daten mit einer Reihe
wertvoller Logger- und Systeminformationen an.
|
|
 |
Durch Bearbeiten des Default-Templates können Sie die Reihenfolge
oder das Vorkommen der Zusatzinformationen beliebig anpassen und mit
Ihren eigenen Logger-Informationen organisieren.
|
|
 |
Den Rest erledigt OcfLogger für Sie dann vollautomatisch!
|
|
|
|
|
 |
|
 |
SID
|
|
 |
(Session-ID)
|
|
|
|
 |
Die SID identifiziert die einzelne
Logger-Session.
|
|
|
|
 |
SEQNO
|
|
|
|
 |
Die SEQNO identifiziert den einzelnen
Log-Eintrag innerhalb einer Session.
|
|
|
|
 |
TIME
|
|
|
|
 |
Datum und Uhrzeit des Logeintrags auf 1/52 Sekunden genau.
|
|
|
|
 |
TID
|
|
 |
(Thread-ID)
|
|
|
|
 |
OcfLogger ermittelt automatisch die TID der
aufrufenden Methode.
|
|
|
|
 |
MID
|
|
 |
(Modul-ID)
|
|
|
|
 |
Die MID bzw. Modul-ID = Speicheradresse der DLL oder des
Executables im Prozess der aufrufenden Methode.
|
|
|
|
 |
MNAME
|
|
 |
(Modul-Name)
|
|
|
|
 |
OcfLogger ermittelt den Klartextnamen und Pfad
der DLL oder des Executables der aufrufenden Methode.
|
|
|
|
 |
INFO
|
|
|
|
 |
Ihre individuell erweiterbaren Zusatzinformationen.
|
|
|
|
|
 |
Eine Übersicht der Nutzungs- und Anwendungsmöglichkeiten
über die reine Informationsgewinnung hinaus finden Sie noch im
folgenden.
|
|
 |
Das Default-Template sieht für die Formatierung des Info-Tags den
folgenden Aufbau vor:
|
|
 |
|
 |
Module
|
|
|
|
 |
Von Ihnen festgelegter bzw. von der Umgebung bereitgestellter
Name des Quelltextmoduls der aufrufenden Methode.
|
|
|
|
 |
Line
|
|
|
|
 |
Von Ihnen übergebene bzw. von der Umgebung bereitgestellte
Zeilennummer der Quelltextzeile des Logger-Aufrufs.
|
|
|
|
 |
LastErr
|
|
|
|
 |
Von Ihnen ermittelter bzw. von der Umgebung bereitgestellter
aktueller Systemfehlerwert mit Klartextbeschreibung.
|
|
|
|
 |
Log
|
|
|
|
 |
Die von Ihnen für den Logeintrag individuell übergebene
Textinformation.
|
|
|
|
|
|
|
|
 |
|
|
|
 |
Das Plus beim Plus!
|
 |
Bei Einsatz einer C- oder C++-Entwicklungsumgebung wie z.B. des
Developer-Studios 6.0 von Microsoft beschränkt sich Ihre Aufgabe
letztlich auf die Übergabe des Inhaltes des Log-Tags.
Sämtliche anderen Informationen lassen Sie einfach von unseren
Makros und Utilities erledigen!
|
|
|
|
|
 |
OcfLogger prüft beim Schreiben von Logging-Informationen automatische
System-Error-Codes ab. Wird ein Systemfehler detektiert erhalten Sie automatisch eine
Klartextbeschreibung des aktuellen Fehlercodes! Unsere Erfahrungen zeigen,
dass gerade versteckte Systemfehler - diese schlagen leider oft
nicht bis zu Ihrer Anwendung durch - Hinweise auf grundsätzliche
Probleme oder Defekte liefern können.
|
|
|
 |
|
|
|
 |
Das Plus-Plus bei C++!
|
 |
Unsere speziellen C++-Utility-Objekte ermöglichen es Ihnen, das
Verlassen Ihres Call-Stacks automatisch Protokollieren zu lassen.
Anders als bei den üblichen Logging-Ansätzen müssen Sie
bei uns nicht jeden möglichen Austrittspunkt Ihrer Methode
einzeln von Hand bedienen!
|
|
 |
In Kombination mit unserem Vorgehensmodell beim Exception-Handling
erhalten Sie nicht nur den garantierten Log-Eintrag beim Verlassen der
Methode, sondern gleich noch die Exception-Information
im Klartext im Protokoll.
|
|
|
|
|
|
 |
|
|
|
 |
Custom-Properties
|
 |
OcfLogger bietet Ihnen die Möglichkeit, die Logger-Einstellungen
Ihrer Applikation automatisch über die Registry zu verwalten.
|
|
 |
Sie legen dabei lediglich Ihren Anwendungsbezeichner fest!.
|
|
|
|
|
 |
Bei seiner ersten Aktivierung werden von OcfLogger ggf. die
Default-Werte in der Registry angelegt. Dabei können Sie sowohl
über Ihre eigene Parametrisierung gezielt Einstellungen vornehmen
und in der Registry persistent machen als auch z.B. durch ein RGS-File
das Deployment Ihrer Konfigurationsänderungen vornehmen.
|
|
 |
Die Logger-Konfiguration kann zudem über die entsprechenden
Properties zur Laufzeit eingestellt und modifiziert werden. Auf Wunsch
werden bei Programmende automatisch vorgenommene Änderungen in
der Registry gespeichert oder als rein temporär betrachtet. Ein
explizites Sichern der vorgenommenen Einstellungen ist
selbstverständlich auch möglich.
|
|
 |
Die OcfLogger-Properties für die Anwendung
"OcfTest" finden sich z.B. unter dem Registry-Pfad
"HKLM\Software\ORCUS\OcfLogger\4.7.0.13\OcfTest".
|
|
 |
Die Default-Properties ohne Anwendungsbezug werden unter dem
Registry-Pfad
"HKLM\Software\ORCUS\OcfLogger\4.7.0.13\Defaults"
angelegt.
|
|
 |
Ohne Customizing weisen sie die folgenden Einträge und
Werte auf (mit '*' markierte Werte entsprechen dabei den
Defaults bei der Auslieferung.
|
|
 |
|
 |
AutoUpdateRegistry
|
|
|
|
 |
Automatisches Aktualisieren der Registry beim
Programmende durch die zur Laufzeit eingestellten Werte.
|
|
 |
REG_DWORD: *0=FALSE=aus, 1=TRUE=an
|
|
|
|
 |
FileSizeToKeep
|
|
|
|
 |
Länge des zu erhaltenden Logfiles in Byte bei
einem Wrap-Around.
|
|
 |
REG_DWORD: Angabe zwischen 0 und kleiner MaxFileSize; *50000
|
|
|
|
 |
LogPath
|
|
|
|
 |
Name und optional Pfad der Logdatei.
|
|
 |
REG_SZ: *'OcfLogger.log'
|
|
|
|
 |
LogTemplate
|
|
|
|
 |
Das Template für die aufzubereitende
Logging-Information.
|
|
 |
REG_SZ:
|
|
|
|
 |
MaxFileSize
|
|
|
|
 |
Maximale Länge des Logfiles in Byte. Beim
Überschreiten von MaxFileSize wird das Logfile automatisch auf
eine passende Länge entsprechend FileSizeToKeep gekürzt.
Dabei bleiben die zuletzt geloggten Informationen erhalten und die
ältesten Einträge werden verworfen.
|
|
 |
REG_DWORD: Angabe muss größer als FileSizeToKeep sein; *1000000
|
|
|
|
 |
ReplaceUml
|
|
|
|
 |
Automatisches Ersetzen von Umlauten durch
XML-Character-Entities.
|
|
 |
REG_DWORD: 0=FALSE=aus, *1=TRUE=an
|
|
|
|
 |
TruncateStartTag
|
|
|
|
 |
Das hier hinterlegte Textfragment entspricht
eindeutig dem Anfang des Log-Templates. Das Textfragment dient beim
Wrap-Around der Logdatei zum korrekten Abschneiden der veralteten
Loginformation an einer Eintragsgrenze, um so eine saubere
XML-Struktur zu gewährleisten.
|
|
 |
REG_SZ: - muss dem eindeutigen Anfang des aktuellen
(XML-)Log-Templates entsprechen.
|
|
|
|
 |
WriteThrough
|
|
|
|
 |
Steuert das gepufferte oder ungepufferte Schreiben der
Logging-Information in das Logfile.
|
|
 |
REG_DWORD: *0=FALSE=aus, 1=TRUE=an
|
|
|
|
|
|
 |
|
|
|
 |
Multiple Sessions
|
 |
Logging-Daten werden von OcfLogger auch über Sessions hinweg
erhalten. Beim Start einer neuen Session werden die neuen
Logging-Informationen angehängt. Bisherige Einträge des
Logfiles bleiben bis zum Erreichen der konfigurierten
Maximalgröße erhalten.
|
|
|
|
|
|
 |
|
|
|
 |
Wrap-Cut-Around
|
 |
Beim Überschreiten der konfigurierten Maximalgröße
wird das Logfile auf die ebenfalls konfigurierte
Mindestgröße gekürzt. Dabei bleiben die jüngsten
Log-Einträge vollständig erhalten!
|
|
|
|
|
|
 |
|
|
|
 |
Historisieren und Maschinenkennung
|
 |
OcfLogger unterstützt Sie auch beim Historisieren der
Logging-Information durch eine Session-ID (SID). Die SID wird
automatisch beim Anlegen der Logger-Instanz auf Basis einer
unverwechselbaren GUID erzeugt und wird vom Default-Template in jedem
Log-Eintrag vermerkt.
|
|
|
|
|
 |
Als zusätzlichen positiven Effekt können Sie allein auf
Basis der GUID ein Logfile einem konkreten Rechner zuordnen, sofern
dieser zum Zeitpunkt des Loggens über eine registrierte
Netwerkkarte verfügte (die MAC-Adresse der Netzwerkkarte ist
Bestandteil der GUID).
|
|
|
 |
|
|
|
 |
Kein Byte verlieren - Write Through
|
 |
Da gerade in kritischen Situationen keine Informationen verloren gehen
dürfen, unterstützt OcfLogger das ungepufferte Schreiben in
das Log-File.
|
|
|
|
|
 |
Dabei ist es egal, ob Sie gezielt aus Ihrer Anwendung heraus das
Puffern der Log-Daten steuern, oder ob im Notfall der Anwender durch
schlichtes Setzen des Registry-Keys das Feature selbst aktiviert.
|
|
|
 |
|
|
|
 |
XML-Support
|
 |
Für die Umsetzung von Umlauten und Sonderzeichen in XML-konforme
Character-Entities bietet OcfLogger eine automatische
Übersetzung Ihrer Logging-Einträge an.
|
|
|
|
|
 |
Durch Einsatz unserer XSLT-Aufbereitung erhalten Ihre Logfiles die
Übersicht, die Ihnen wirklich den Überblick gibt.
|
|
 |
Durch unser XSLT-Script OLoggerInspect können Sie eine beliebige
Anzahl von Logfiles in einer XHTML-Oberfläche anzeigen lassen. An
Hand des integrieren Error-Colorings finden Sie Bugs und
Fehlerzustände auf den ersten Blick.
|
|
|
 |
|
|
|
 |
Debuggen Sie auch richtig?
|
 |
Es kommt gar nicht so selten vor, dass beim Debuggen einem
Phantom (der verkehrten DLL, oder einer vergessenen Debug-Version des
Exes) hinterher gejagt wird.
|
|
|
|
|
 |
Ein Blick in das Logfile zeigt Ihnen sofort, welche Module (Dlls und
Exes) aus welchen Pfaden zum Ausführungszeitpunkt verwendet
wurden.
|
|
|
 |
|
|
|
 |
Testen Sie auch richtig?
|
 |
OcfLogger kann erheblich mehr als nur Loggen. Zusammen mit unserem
Vorgehensmodell und einigen wenigen Hilfswerkzeugen bietet OcfLogger
eine ausgezeichnete Basis für automatisierte Regressionstests.
|
|
|
|
|
|
|
|