Table of Contents
Filename: internals.logging.xsl
$Revision: 37 $, $Date: 2011-06-26 22:53:01 +0200 (Sun, 26 Jun 2011) $
Dieses Stylesheet stellt ein API für das Logging zur Verfügung. Die Templates sind nicht zur direkten Benutzung gedacht; vielmehr sollen externe Wrapper dieses API nutzen. Dadurch kann der Logging-Unterbau ggfs. ausgetauscht werden.
Autor:
Homepage: http://www.expedimentum.org/
Lizenz (duale Lizenzierung):
Dieses Stylesheet und die dazugehörige Dokumentation sind unter einer Creative Commons-Lizenz (CC-BY 3.0) lizenziert. Die Weiternutzung ist bei Namensnennung erlaubt.
Dieses Stylesheet und die dazugehörige Dokumentation sind unter der sogenannten Expat License (einer GPL-kompatiblen MIT License) lizensiert. Es darf – als Ganzes oder auszugweise – unter Beibehaltung der Copyright-Notiz kopiert, verändert, veröffentlicht und verbreitet werden. Die Copyright-Notiz steht im Quelltext des Stylesheets und auf der Startseite der Dokumentation.
Original-URLs
Stylesheet: http://www.expedimentum.org/example/xslt/xslt-sb/internals.logging.xsl
Dokumentation: http://www.expedimentum.org/example/xslt/xslt-sb/doc/internals.logging.html
Test-Stylesheet: http://www.expedimentum.org/example/xslt/xslt-sb/internals.logging_tests.xsl
Test-Dokumentation: http://www.expedimentum.org/example/xslt/xslt-sb/doc/internals.logging_tests.html
Google Code: http://code.google.com/p/xslt-sb/
Revision History | ||
---|---|---|
Revision 0.2.0 | 2011-05-14 | Stf |
erste veröffentlichte Version | ||
Revision 0.129 | 2011-02-27 | Stf |
Erweiterung der Lizenz auf Expath/MIT license | ||
Revision 0.53 | 2009-10-25 | Stf |
Umstellung auf Namespaces xsb: und intern: | ||
Revision 0.47 | 2009-10-11 | Stf |
Ausgliederung von Logging aus internals.xsl | ||
Revision 0.36 | 2009-08-02 | Stf |
initiale Version |
intern:internals.logging.Output (xsl:template)
Dieses Template ist der zentrale Einstieg zur Realisierung des Logging. Es nimmt die Logging-Parameter entgegen, wandelt sie in Tunnel-Parameter um und ruft den Dispatcher
intern:internals.logging.Dispatcher
auf. Es ist recht abstrakt und sollte zur Benutzung von Wrappern (wie z.B.xsb:internals.Logging
) umgeben werden.Diese Template ist auch für die Umwandlung der übergebenen Parameter in getunnelte Parameter zuständig.
Revision History Revision 0.53 2009-10-25 Stf Status: beta
Umstellung auf Namespaces
xsb:
undintern:
Revision 0.36 2009-08-02 Stf Status: beta
initiale Version
Parameter
log-entry.preText as="xs:string?" required="no"
Text, der ganz am Anfang der Ausgabe geschrieben wird. Bei Ausgabe als Text oder auf die Konsole kann darüber bspw. eine Einrückung realisiert werden. Bei Ausgabe als XML wird dieser Text der Nachricht hinzugefügt, bei Ausgabe als HTML wird eine zusätzliche Tabellenspalte erzeugt.
Parameter
log-entry.ID as="xs:string?" required="no"
Parameter
log-entry.timeStamp as="xs:dateTime?" required="no"
Parameter
log-entry.processedFile as="xs:string?" required="no"
Parameter
log-entry.level as="xs:string?" required="no"
Level der Nachricht. In Anlehnung an
Log4j
werden per Vorgabe die Stufen »ALL
« > »TRACE
« > »DEBUG
« > »INFO
« > »WARN
« > »ERROR
« > »FATAL
« (in aufsteigender Reihenfolge der Wichtigkeit) verwendet.Parameter
log-entry.text as="xs:string?" required="no"
Parameter
log-entry.category as="xs:string?" required="no"
Kategorie der Nachricht, dient als zusätzliches Unterscheidungsmerkmal bei der externen Auswertung, z.B. "Fehler", "Abrechnung" oder "Hauptroutine"
Parameter
log-entry.postText as="xs:string?" required="no"
Text, der ganz am Ende der Ausgabe geschrieben wird. Die konkrete Ausgabe wird in den entsprechenden
intern:internals.logging.Render-to-xxx
-Templates erzeugt; beispielsweise wird bei Ausgabe als XML dieser Text vonintern:internals.logging.Render-to-xml
hinter$log-entry.text
eingefügt.Parameter
log-entry.linebreak-string as="xs:string?" required="no"
Parameter
log-entry.write-to-console as="xs:boolean" required="yes"
Parameter
log-entry.write-to-file as="xs:boolean" required="yes"
Parameter
log-entry.write-to-file-as-comment as="xs:boolean" required="yes"
Parameter
log-entry.write-to-file-as-element as="xs:boolean" required="yes"
Parameter
log-entry.write-to-file-as-html as="xs:boolean" required="yes"
Parameter
log-entry.write-to-file-as-text as="xs:boolean" required="yes"
Parameter
log-entry.write-preText as="xs:boolean" required="yes"
Parameter
log-entry.write-ID as="xs:boolean" required="yes"
Parameter
log-entry.write-timeStamp as="xs:boolean" required="yes"
Parameter
log-entry.write-processedFile as="xs:boolean" required="yes"
Parameter
log-entry.write-level as="xs:boolean" required="yes"
Parameter
log-entry.write-text as="xs:boolean" required="yes"
Parameter
log-entry.write-category as="xs:boolean" required="yes"
Parameter
log-entry.write-postText as="xs:boolean" required="yes"
intern:internals.logging.Dispatcher (xsl:template)
Dieses Template verteilt die Nachrichten an die passenden Ausgabe-Templates. Parameter werden über
tunnel="yes"
durchgereicht (getunnelt).Dieses zwischengeschaltete Template vermeidet außerdem, dass die Umwandlung in Tunnel-Parameter innerhalb von
internal:internals.logging.Output
mehrfach vorgenommen werden muss.
Revision History Revision 0.53 2009-10-25 Stf Status: beta
Umstellung auf Namespaces
xsb:
undintern:
Revision 0.36 2009-08-02 Stf Status: beta
initiale Version
Parameter
log-entry.write-to-console.tunneld as="xs:boolean" tunnel="yes" required="yes"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-to-file.tunneld as="xs:boolean" tunnel="yes" required="yes"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-to-file-as-comment.tunneld as="xs:boolean" tunnel="yes" required="yes"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-to-file-as-element.tunneld as="xs:boolean" tunnel="yes" required="yes"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-to-file-as-html.tunneld as="xs:boolean" tunnel="yes" required="yes"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-to-file-as-text.tunneld as="xs:boolean" tunnel="yes" required="yes"
siehe Template
intern:internals.logging.Output
intern:internals.logging.Write-to-console (xsl:template)
Dieses Template gibt die Nachricht auf der Konsole aus. Parameter werden über
tunnel="yes"
an das Templateintern:internals.logging.Render-to-string
durchgereicht (getunnelt).Das Template wird normalerweise von
intern:internals.logging.Output
aufgerufen.Hook: kann zum Umleiten oder Umformatieren überschrieben werden.
Revision History Revision 0.53 2009-10-25 Stf Status: beta
Umstellung auf Namespaces
xsb:
undintern:
Revision 0.36 2009-08-02 Stf Status: beta
initiale Version
intern:internals.logging.Write-to-file-as-comment as="comment()" (xsl:template)
Dieses Template gibt die Nachricht als Kommentar in den Output-Stream (in der Regel: die Ergebnis-Datei) aus. Parameter werden über
tunnel="yes"
an dasTemplate intern:internals.logging.Render-to-string
durchgereicht (getunnelt).Das Template wird normalerweise von
intern:internals.logging.Output
aufgerufen.Hook: kann zum Umleiten oder Umformatieren überschrieben werden.
Revision History Revision 0.53 2009-10-25 Stf Status: beta
Umstellung auf Namespaces
xsb:
undintern:
Revision 0.36 2009-08-02 Stf Status: beta
initiale Version
intern:internals.logging.Write-to-file-as-element as="node()*" intern:solved="EmptySequenceAllowed" (xsl:template)
Dieses Template gibt die Nachricht als XML-Element in den Output-Stream (in der Regel: die Ergebnis-Datei) aus. Parameter werden über
tunnel="yes"
an dasTemplate intern:internals.logging.Render-to-xml
durchgereicht (getunnelt).Das Template wird normalerweise von
intern:internals.logging.Output
aufgerufen.Hook: kann zum Umleiten oder Umformatieren überschrieben werden.
Revision History Revision 0.53 2009-10-25 Stf Status: beta
Umstellung auf Namespaces
xsb:
undintern:
Revision 0.36 2009-08-02 Stf Status: beta
initiale Version
Parameter
log-entry.linebreak-string.tunneld as="xs:string?" tunnel="yes" required="no"
siehe Template
intern:internals.logging.Output
intern:internals.logging.Write-to-file-as-html as="node()+" (xsl:template)
Dieses Template gibt die Nachricht als HTML-Elemente in den Output-Stream (in der Regel: die Ergebnis-Datei) aus. Parameter werden über
tunnel="yes"
an dasTemplate intern:internals.logging.Render-to-html
durchgereicht (getunnelt).Das Template wird normalerweise von
intern:internals.logging.Output
aufgerufen.Hook: kann zum Umleiten oder Umformatieren überschrieben werden.
Revision History Revision 0.53 2009-10-25 Stf Status: beta
Umstellung auf Namespaces
xsb:
undintern:
Revision 0.36 2009-08-02 Stf Status: beta
initiale Version
intern:internals.logging.Write-to-file-as-text as="xs:string*" intern:solved="EmptySequenceAllowed" (xsl:template)
Dieses Template gibt die Nachricht als Text in den Output-Stream (in der Regel: die Ergebnis-Datei) aus. Parameter werden über
tunnel="yes"
an dasTemplate intern:internals.logging.Render-to-string
durchgereicht (getunnelt).Das Template wird normalerweise von
intern:internals.logging.Output
aufgerufen.Hook: kann zum Umleiten oder Umformatieren überschrieben werden.
Revision History Revision 0.53 2009-10-25 Stf Status: beta
Umstellung auf Namespaces
xsb:
undintern:
Revision 0.36 2009-08-02 Stf Status: beta
initiale Version
Parameter
log-entry.linebreak-string.tunneld as="xs:string?" tunnel="yes" required="no"
siehe Template
intern:internals.logging.Output
intern:internals.logging.Render-to-string as="xs:string?" intern:solved="EmptySequenceAllowed" (xsl:template)
Dieses Template rendert die Message-Parameter als Text. Parameter werden über
tunnel="yes"
empfangen (getunnelt).Werden keine Parameter übergeben, wird eine
empty sequence
zurückgegeben.Hook: kann zum Umformatieren überschrieben werden.
Revision History Revision 0.53 2009-10-25 Stf Status: beta
Umstellung auf Namespaces
xsb:
undintern:
Revision 0.36 2009-08-02 Stf Status: beta
initiale Version
Parameter
log-entry.preText.tunneld as="xs:string?" tunnel="yes" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.ID.tunneld as="xs:string?" tunnel="yes" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.timeStamp.tunneld as="xs:dateTime?" tunnel="yes" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.processedFile.tunneld as="xs:string?" tunnel="yes" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.level.tunneld as="xs:string?" tunnel="yes" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.text.tunneld as="xs:string?" tunnel="yes" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.category.tunneld as="xs:string?" tunnel="yes" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.postText.tunneld as="xs:string?" tunnel="yes" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-preText.tunneld as="xs:boolean" tunnel="yes" required="yes"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-ID.tunneld as="xs:boolean" tunnel="yes" required="yes"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-timeStamp.tunneld as="xs:boolean" tunnel="yes" required="yes"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-processedFile.tunneld as="xs:boolean" tunnel="yes" required="yes"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-level.tunneld as="xs:boolean" tunnel="yes" required="yes"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-text.tunneld as="xs:boolean" tunnel="yes" required="yes"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-category.tunneld as="xs:boolean" tunnel="yes" required="yes"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-postText.tunneld as="xs:boolean" tunnel="yes" required="yes"
siehe Template
intern:internals.logging.Output
intern:internals.logging.Render-to-xml as="node()" (xsl:template)
Dieses Template rendert die Message-Parameter als XML-Elemente. Parameter werden über
tunnel="yes"
empfangen (getunnelt).Die Nachricht wird in ein message-Element mit Kindelementen umgewandelt.
Hook: kann zum Umformatieren überschrieben werden.
Revision History Revision 0.139 2011-04-24 Stf Status: beta
Trennung von preText, Text und postText
Revision 0.53 2009-10-25 Stf Status: beta
Umstellung auf Namespaces
xsb:
undintern:
Revision 0.36 2009-08-02 Stf Status: beta
initiale Version
Parameter
log-entry.preText.tunneld as="xs:string?" tunnel="yes" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.ID.tunneld as="xs:string?" tunnel="yes" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.timeStamp.tunneld as="xs:dateTime?" tunnel="yes" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.processedFile.tunneld as="xs:string?" tunnel="yes" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.level.tunneld as="xs:string?" tunnel="yes" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.text.tunneld as="xs:string?" tunnel="yes" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.category.tunneld as="xs:string?" tunnel="yes" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.postText.tunneld as="xs:string?" tunnel="yes" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-preText.tunneld as="xs:boolean" tunnel="yes" required="yes"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-ID.tunneld as="xs:boolean" tunnel="yes" required="yes"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-timeStamp.tunneld as="xs:boolean" tunnel="yes" required="yes"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-processedFile.tunneld as="xs:boolean" tunnel="yes" required="yes"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-level.tunneld as="xs:boolean" tunnel="yes" required="yes"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-text.tunneld as="xs:boolean" tunnel="yes" required="yes"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-category.tunneld as="xs:boolean" tunnel="yes" required="yes"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-postText.tunneld as="xs:boolean" tunnel="yes" required="yes"
siehe Template
intern:internals.logging.Output
intern:internals.logging.Render-to-html as="node()+" (xsl:template)
Dieses Template rendert die Message-Parameter als HTML-Elemente. Parameter werden über
tunnel="yes"
empfangen (getunnelt).Hook: kann zum Umformatieren überschrieben werden.
Revision History Revision 0.141 2011-04-25 Stf Status: beta
log-entry.command
entferntRevision 0.53 2009-10-25 Stf Status: beta
Umstellung auf Namespaces
xsb:
undintern:
Revision 0.36 2009-08-02 Stf Status: beta
initiale Version
Parameter
log-entry.preText.tunneld as="xs:string?" tunnel="yes" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.ID.tunneld as="xs:string?" tunnel="yes" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.timeStamp.tunneld as="xs:dateTime?" tunnel="yes" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.processedFile.tunneld as="xs:string?" tunnel="yes" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.level.tunneld as="xs:string?" tunnel="yes" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.text.tunneld as="xs:string?" tunnel="yes" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.category.tunneld as="xs:string?" tunnel="yes" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.postText.tunneld as="xs:string?" tunnel="yes" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-preText.tunneld as="xs:boolean" tunnel="yes" required="yes"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-ID.tunneld as="xs:boolean" tunnel="yes" required="yes"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-timeStamp.tunneld as="xs:boolean" tunnel="yes" required="yes"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-processedFile.tunneld as="xs:boolean" tunnel="yes" required="yes"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-level.tunneld as="xs:boolean" tunnel="yes" required="yes"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-text.tunneld as="xs:boolean" tunnel="yes" required="yes"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-category.tunneld as="xs:boolean" tunnel="yes" required="yes"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-postText.tunneld as="xs:boolean" tunnel="yes" required="yes"
siehe Template
intern:internals.logging.Output
intern:internals.logging.MakeHeader.element (xsl:template)
Dieses Template erzeugt bei der Ausgabe als xml den Kopf, speziell das öffnende Element
Revision History Revision 0.139 2011-04-24 Stf Status: alpha
initiale Version
intern:internals.logging.MakeHeader.html exclude-result-prefixes="#all" (xsl:template)
Dieses Template erzeugt bei der Ausgabe als xml den Kopf, speziell das öffnende Element
Revision History Revision 0.139 2011-04-24 Stf Status: alpha
initiale Version
Parameter
titel as="xs:string?" required="no"
optionaler Seitentitel
intern:internals.logging.MakeFooter.element (xsl:template)
Dieses Template erzeugt bei der Ausgabe als XML den Fuß, speziell das schließende Element
Revision History Revision 0.139 2011-04-24 Stf Status: alpha
initiale Version
intern:internals.logging.MakeFooter.html exclude-result-prefixes="#all" (xsl:template)
Dieses Template erzeugt bei der Ausgabe als HTML den Fuß, speziell die schließenden Tags
Revision History Revision 0.139 2011-04-24 Stf Status: alpha
initiale Version
intern:internals.logging.MakeThead.HTML as="node()" (xsl:template)
Dieses Template erzeugt eine Zeile mit dem Tabellenkopf für die Ausgabe als HTML. Die Signatur des Templates entspricht einem normalen Logging-Eintrag (mit Ausnahme von
log-entry.timeStamp
, das hierxs:string
ist), die übergebenen Werte werden in die Spaltenüberschriften geschrieben. Werden keine Werte übergeben, werden Standardwerte verwendet.Hook: kann zum Umformatieren überschrieben werden.
Revision History Revision 0.141 2011-04-25 Stf Status: beta
als selbständiges Template neben der Logging-Infrastruktur umgeschrieben
Revision 0.53 2009-10-25 Stf Status: beta
Umstellung auf Namespaces
xsb:
undintern:
Revision 0.36 2009-08-02 Stf Status: beta
initiale Version
Parameter
log-entry.preText as="xs:string?" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.ID as="xs:string?" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.timeStamp as="xs:string?" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.processedFile as="xs:string?" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.level as="xs:string?" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.text as="xs:string?" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.category as="xs:string?" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.postText as="xs:string?" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-preText as="xs:boolean" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-ID as="xs:boolean" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-timeStamp as="xs:boolean" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-processedFile as="xs:boolean" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-level as="xs:boolean" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-text as="xs:boolean" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-category as="xs:boolean" required="no"
siehe Template
intern:internals.logging.Output
Parameter
log-entry.write-postText as="xs:boolean" required="no"
siehe Template
intern:internals.logging.Output
intern:internals.logging.Dispatcher
(Logging-System - internals.logging.xsl
)intern:internals.logging.MakeFooter.element
(Logging-System - internals.logging.xsl
)intern:internals.logging.MakeFooter.html
(Logging-System - internals.logging.xsl
)intern:internals.logging.MakeHeader.element
(Logging-System - internals.logging.xsl
)intern:internals.logging.MakeHeader.html
(Logging-System - internals.logging.xsl
)intern:internals.logging.MakeThead.HTML
(Logging-System - internals.logging.xsl
)intern:internals.logging.Output
(Logging-System - internals.logging.xsl
)intern:internals.logging.Render-to-html
(Logging-System - internals.logging.xsl
)intern:internals.logging.Render-to-string
(Logging-System - internals.logging.xsl
)intern:internals.logging.Render-to-xml
(Logging-System - internals.logging.xsl
)intern:internals.logging.Write-to-console
(Logging-System - internals.logging.xsl
)intern:internals.logging.Write-to-file-as-comment
(Logging-System - internals.logging.xsl
)intern:internals.logging.Write-to-file-as-element
(Logging-System - internals.logging.xsl
)intern:internals.logging.Write-to-file-as-html
(Logging-System - internals.logging.xsl
)intern:internals.logging.Write-to-file-as-text
(Logging-System - internals.logging.xsl
)