Was kann man so alles aus einem Essbase Exception Log erfahren?

Jeder der eine Weile auf Essbase entwickelt kennt es, die Essbase Datenbank „Crasht“ und es gibt ein Exception Error Log. Ist diese oft mehrere hundert Zeilen lange Datei nur etwas für den Support, oder enthält diese auch etwas was den Administrator weiter hilft?

Exception Error (Ausnahme Fehler) kann es auf Serverebene, auf Applikationsebene und auf Datenbankebene geben. Entsprechend kann die Logdatei sich an verschiedenen Stellen befinden. Jetzt liegen ja alle Logdateien gemeinschaftlich im diagnistics\logs Verzeichnis (meistens \\Oracle\Middleware\user_projects\epmsystem1\diagnostics\logs\essbase\) und daher sollte die Suche nicht so schwierig sein. Der Dateiname fängt mit log an und danach kommt eine fortlaufende Nummer. Die Datei erweiterung ist immer xcp. Das erste Exception Error Log trägt demzufolge den Namen log00001.xcp

Inhalt

Nun zum Inhalt dieser Datei. Die Datei ist immer gleich aufgebaut und fäng an mit einer Kopfzeile und darunter eine Zusammenfassung der wichtigsten Daten

 

----- Exception Error Log Begin -----
Current Date & Time:   Mon Feb 05 16:02:16 2018
Process Type:          Application
Application Name:      PLAN
Database Name:        
Exception Log File:    D:\Oracle\Middleware\user_projects\epmsystem1\diagnostics\logs\essbase\app\PLAN\log00004.xcp
Current Thread Id:     4632
Exception Code:        0xC0000005=Access Violation
Exception Flags:       0x00000000=Continuable
Exception Address:     0x000000006D4A0A6C
Exception Parameters:  2
Exception Parameter 0: 0x00000000=Read Violation
Exception Parameter 1: 0x00000000 (Virtual Address)

In diesem Teil sehen wir, den genauen Zeitpunkt, wann der Fehler aufgetreten ist. Auch können wir sehen, dass diese Logdatei von der Applikation PLAN ist und der Fehler auf Applikationsebene geschehen ist. Die Logdatei liegt im Applikationsordner und das Feld hinter Database Name ist leer.

 

Unter der „Current Thread Id” sehen wir den Exception Code. Hier gibt es 3 Optionen

  • Access violation
  • Segmentation violation
  • Assertion failures

Access violation und Segmentation violation zeigen, wie der Name schon sagt, eine Zugriffsverweigerung an. Dieses kann eine Zugriffsverweigerung im internen Speicher sein, aber kann auch auf einen Mangel an System Ressourcen wie Festplatte weisen.

Die „assertion failures“ weisen meistens auf eine korrupte Datenbank. In den „Machine Registers“ können dann Begriffe stehen wie:

  • datbuffm.c         Datenpuffer zu gering
  • tmgtct.c               Transaktion Problem
  • datfrag.c              Problem mit der Fragmentierung der Datenbank

 

Der Teil mit dem Namen „Stack“ ist ohne Spezialkenntnisse nicht zu interpretieren.

Die Informationen unter „Application-Wide Configuration” sind weniger aufschlussreich.

Unter „Operating System Resources” befindet sich viel Basis Information für den Support aber auch wie die System Ressourcen waren zum Zeitpunkt des Fehlers. So ist hier erkennbar, wieviel Speicher verfügbar war und wieviel Platz auf den Festplatten war.

 

----- Operating System Resources -----
System Date & Time:    Mon Feb 05 16:02:18 2018
Elapsed OS Time:       17:02:55:43
OS Name & Version:     Windows 6.01
CPU Count:             24
CPU Type:              X86_64
Total Physical Memory: 33518876 KB (34323329024)
Free Physical Memory:  29924428 KB (30642614272)
Used Physical Memory:  3594448 KB (3680714752)
Swap Flags:
   Enabled:            Y
   Disabled:           N
   File Found:         Y
   Denied:             N
Swap file(s):          ?:\pagefile.sys
Correct Swap Space information currently not available
Total Drives:          2
Current Drive:         4
Drive  3:
   Drive Name:         C
   Volume Label:      
   Drive Type:         Fixed
   File System:        NTFS
   Total Drive Space:  86937596 KB
   Free Drive Space:   18864548 KB
   Used Drive Space:   68073048 KB
Drive  4:
   Drive Name:         D
   Volume Label:       Volume
   Drive Type:         Fixed
   File System:        NTFS
   Total Drive Space:  498984956 KB
   Free Drive Space:   146580944 KB
   Used Drive Space:   352404012 KB

 

Die “System-Wide Configuration” zeigt die exakte Version und Patchlevel von Essbase an. Auch ob alle Module dasselbe Patch haben.

 

----- System-Wide Configuration -----
Elapsed Essbase Time:  00:05:47:12
Essbase Version:       11.1.2
Essbase Description:   ESB11.1.2.4.000B193
Network Type:          Windows Sockets
Environment Variable:  ARBORPATH                 = D:\Oracle\Middleware\
Environment Variable:  ARBORMSGPATH              = D:\Oracle\Middleware\
Module Count:          25
Module  0:
   Module Name:        D:\ORACLE\MIDDLEWARE\EPMSYSTEM11R1\PRODUCTS\ESSBASE\ESSBASESERVER\BIN\ESSSDU.DLL
   Module Version:     11.1.2.1
   Module Description: ESB11.1.2.4.000B193.1
   Module Use Count:   2

 

Der nächste Teil hat den Namen „ESSBASE.CFG Configuration Values“ und zeigt, sie raten es schon, den Inhalt der Essbase Konfigurationsdatei. Als Administrator sollte hier auch nichts Neues zu finden sein.

 

----- ESSBASE.CFG Configuration Values -----
Configuration Value:   BPM_Oracle_DriverDescriptor = "DataDirect 7.1 Oracle Wire Protocol"
Configuration Value:   BPM_DB2_DriverDescriptor  = "DataDirect 7.1 DB2 Wire Protocol"
Configuration Value:   BPM_SQLServer_DriverDescriptor = "DataDirect 7.1 SQL Server Wire Protocol"
Configuration Value:   BPM_Teradata_DriverDescriptor = "Teradata"
Configuration Value:   BPM_MySQL_DriverDescriptor = "DataDirect 7.1 MySQL Wire Protocol
Configuration Value:   UnicodeEnable             =
Configuration Value:   AuthenticationModule      = CSS
Configuration Value:   AGENTPORT                 = 1423
Configuration Value:   SERVERPORTBEGIN           = 32768
Configuration Value:   SERVERPORTEND             = 33768
Configuration Value:   AGENTDESC                 = essservice
Configuration Value:   FailoverMode              = true

 

Der letzte Teil ist  „Client Request Activity” und kann interessant sein. Denn hier werden die Prozesse angezeigt, die noch liefen oder vor kurzem gelaufen sind. Die Logdatei ist von 16:02 Uhr und vor 12 Minuten wurde die Dimensionsinfo abgerufen, und dieser Prozess wurde abgeschlossen. Der MaxL Prozess war vor einer Viertelstunde gestartet, lief aber noch.

 

Thread Id 3656:
   Request Name:        GetDimInfo
   Database Name:       Plan1
   User Name:           phulsebo@trexco.nl
   Start Time:          Mon Feb 05 15:50:28 2018
   End Time:            Mon Feb 05 15:50:28 2018
Thread Id 7660:
   Request Name:        MaxL: Execute
   Database Name:       Plan1
   User Name:           phulsebo@trexco.nl
   Start Time:          Mon Feb 05 15:46:51 2018
   End Time:            Pending

 

Das Ende der Logdatei wird mit dieser Zeile angegeben.

----- Exception Error Log End -----

 

Fazit:

Die Exception Log Datei bietet für den Administrator ein paar Hinweise, was die Fehlerursache ist. Mehr aber nicht. Er/Sie kennt die Essbase Umgebung meistens schon gut, aber für den Oracle Support bietet diese Datei eine gute Basisinformation. Daher gehört diese zum „Standardpaket“ welches bei einem Service Request angefordert wird.

 

Ihr Philip Hulsebosch

philip.hulsebosch@hyperionimklartext.de

Veröffentlicht in Essbase Verwendete Schlagwörter: , , , , ,

Schreibe einen Kommentar