PDA

View Full Version : TRACE auf eine ODBC Verbindung???



vogeste0
29-04-03, 12:15
Wer kann mir helfen?

Wir haben mehrere ODBC-Zugriffe von einem VB-Programm auf die Datenbank. Dabei kommt es immer zu den gleichen Wartezeiten. Zum Analysieren der Probleme möchte ich jetzt irgendwie den ODBC-Zugang mit seinen Zugriffen verfolgen können. Am liebsten wäre mir so eine Art TRACE den ich mitlaufen lassen könnte um zu sehen was dabei vom Anfang bis zum Ende vor sich geht. Ich habe aber zur Zeit keine IDEE wie ich das Problem angehen kann.

Dank im Voraus

Stephan Vogelfaenger

Rukober
29-04-03, 15:39
Hallo Stephan,
... dann schalt doch mal im ODBC die Ablaufverfolgung ein.
Systemsteuerung > ODBC-Datenquellen > Reiter Ablaufverfolgung starten.
Die erstellte Protokolldatei hilft ggf. anschließend weiter. Während aktiver Protokollierung ist die Laufzeit der ODBC-Abfragen extrem langsam. Daher sollte die Protokollierung nur kurzfristig zur Prüfzwecken eingeschaltet werden.
Gruss
Frank

Fuerchau
30-04-03, 10:09
Die ODBC-Ablaufverfolgung bringt hier sicherlich nichts. Ich denke du willst genauere Infos über das Zeitverhalten auf der AS/400.
Ab CA/400 V5 kannst du den DB-Serverjob in den DEBUG-Modus versetzen.
Damit kannst du dann aus dem Joblog des DB-Servers genauere Infos über Zugriffswege und Empfehlungen erhalten.

Wenn du noch mit V4 arbeitest, dann setze doch mal die QueryTimeout (DAO) bzw. CommandTimeout (ADO) auf 0 (Null), default ist ja 30.
In diesem Fall wird fast kein Select durchgeführt, da die zu erwartende Ausführungszeit länger als 0 Sekunden beträgt. In diesem Fall werden jedoch Meldungen in das Joblog des DB-Servers eingetragen.

Nun zum Auffinden des Jobs.
Hierzu suchst du den DB-Wartungsjob deines Benutzerprofiles mit dem OpsNav (Server-Jobs). Wenn der Benutzer nicht angezeigt wird, kannst du über die rechte Maustaste das Layout der Spalten ändern und den Benutzer mit anzeigen (da ja alle Server-Jobs unter QUSER laufen).

Dann kannst du das Joblog dieses Jobs über den OpsNav anzeigen, in die jeweiligen Details gehen und so die erforderlichen Maßnahmen ergreifen.

Meistens liegt es an fehlenden oder unglücklichen Zugriffspfaden, die mittels der Where-, Order- und Group-Bestimmungen bestimmt werden.