|
Oracle BI Publisher Tipp
Diagnose von Problemen in der Laufzeitumgebung des BI Publisher
|
|
Treten bei der Ausführung von Berichten Fehler auf oder ist die Performance der Ausführung schlecht,
liefern die Diagnose-Werkzeuge der Fusion Middleware (Oracle Diagnostic Logging) bzw. des BI Publisher detaillierte Informationen.
Der folgende Tipp beschreibt verschiedene Möglichkeiten der Diagnose im aktuellen Release 11g des Oracle BI Publisher.
Schritte:
| *xdo.log | Übersicht der Generierung |
| *rtf_out.xsl | Aus dem RTF-Template erzeugtes XSL-FO Style Sheet |
| *fo_data.xml | Erzeugtes Daten-File (XML) |
| *rtf_template.rtf | Verwendetes RTF-Template |
| *xdo.out | Erzeugtes Output-File (Format hängt vom gewählten Output-Format ab) |
Der Nachteil dieses Verfahrens besteht darin, dass das Logging für alle Berichte eines BI Publisher Server aktiviert wird.
Wird die Java Runtime Umgebung von mehreren Servern genutzt, wird das Logging für alle BI Publisher Server gleichzeitig eingeschaltet.
Kennt man bereits den Übeltäter, kann man das Logging auf einen Bericht beschränken. Dies ist ab der Version 10.1.3.4.1 des BI Publisher möglich.
Schritte:
| STATEMENT | Alle Informationen über den Prozess der Berichtserzeugung. |
| PROCEDURE | Informationen zum Prozess und zur verbrauchten Zeit. |
| ERROR | Informationen zu Fehlern |
| OFF | Ausschalten des Logging |
Diese Diagnose-Möglichkeit ist an den Oracle Enterprise Manager (Fusion Middleware Control) gebunden. Die erzeugten Log-Files verwenden das gemeinsame Log-Format
ODL (Oracle Diagnostic Logging). Die Fusion Middleware Console bietet viele Möglichkeiten der Konfiguration und Auswertung.
Der Aufruf der Fusion Middleware Console erfolgt über die URL:
http://<host>:<port>/em
Aus der Liste der Application Deployments muss der BI Publisher Server ausgewählt werden.
Danach kann man aus dem Menü Application Deployment das Untermenü Logs mit den beiden Optionen View Log Messages und Log Configuration auswählen.

Im folgenden Dialog wird eine Liste von Log Handlern angezeigt.

Wir verwenden für die Konfiguration den bipublisher-handler, indem wir ihn auswählen und mit Edit Configuration in den Dialog zur Konfiguration gelangen.
Hier lassen sich das Ausgabeformat (Text oder XML), der Log Level (Binäre Stufen von 1 bis 32) und Eigenschaften der Logs (Größe, Rotation etc.) einstellen.

Die Anzeige der Log-Files kann über die Console des Fusion Middleware Control oder direkt aus dem Dateisystem des Servers erfolgen.
Sollen die Log-Informationen in der Console angezeigt werden, wählt man aus dem Menü Application Deployment das Untermenü Logs mit der Option View Log Messages aus.
In den Log-Files kann man nach bestimmten Einträgen und Kriterien suchen.

Über die Schaltfläche Target Log Files wird eine Liste der Log-Files angezeigt.
Einzelne Log-Files können zum Betrachten oder Herunterladen ausgewählt werden.

Will man die Log-Files direkt aus dem Dateisystem des Servers öffnen, kann man in der Liste der Log-Files die genauen Pfadangaben innerhalb der BI Foundation Domain finden.
Da die Erzeugung eines Berichts als Thread in der Java Virtual Machine (JVM) ausgeführt wird, kann auch eine Analyse der Thread Dumps (Abzüge des aktuellen Status) oder die
Diagnose-Möglichkeiten von JRockit Mission Control (falls JRockit als JVM zum Einsatz kommt) eine Hilfestellung geben.
Bevor man Dumps laufender Threads erzeugt, sollte die Standard- und Fehlerausgabe (STDOUT/STDERR) aus dem Console-Fenster in eine Log-Datei umgeleitet werden.
Dies geschieht über die WebLogic Server Console:
http://<host>:<port>/console
Über die Auswahl des Servers (Environment => Servers) erreicht man die Registerkarte Logging und dort den Bereich Advanced.
In diesem Bereich müssen die beiden Optionen:
Redirect stdout logging enabled
Redirect stderr logging enabled
aktiviert werden.

Die Thread Dumps werden von der Kommandozeile mit dem Befehl:
kill -3 <process-ID>
erzeugt.
Die Process ID muss vorab aus der Liste der aktiven Prozesse ermittelt werden, z.B. unter Linux mit ps -ef | grep java oder jps -m.