Stack-Traces für einzelne Anweisungen in pureQueryXML-Dateien

In den meisten Fällen enthält eine pureQueryXML-Datei mindestens zwei Stack-Traces für jede der darin enthaltenen SQL-Anweisungen.

Der erste Stack-Trace ist für den Punkt bestimmt, an dem eine Anwendung die SQL-Anweisung definiert, und der zweite Stack-Trace ist für den Punkt bestimmt, an dem die Anwendung die Anweisung ausführt. Wenn die Anwendung eine SQL-Anweisung vorbereitet und mehrmals an mehreren Positionen im Code ausführt, erfasst pureQuery die Stack-Traces für diese mehrfachen Punkte.

Wenn Sie Daten mit einer pureQueryXML-Datei von einem Release vor Version 2.1 inkrementell erfassen, migriert pureQuery die Datei auf das aktuelle Format. Während dieser Konvertierung stellt pureQuery den Stack-Trace für eine vorhandene erfasste SQL-Anweisung an eine der beiden folgenden Positionen in der neuen Dateistruktur:
  • Ist der Stack-Trace das Ergebnis der Methode addBatch() oder addDBBatch(), wird der Stack-Trace an den Definitionspunkt versetzt.
  • Ist der Stack-Trace das Ergebnis einer anderen Methode, wird der Stack-Trace an den Ausführungspunkt versetzt.

In der folgenden Tabelle werden die Punkte im Code einer Anwendung aufgelistet, von denen aus pureQuery Stack-Traces für SQL-Anweisungen erfasst.

Tabelle 1. Punkte im Anwendungscode, von denen aus pureQuery Stack-Traces erfasst
Szenario Punkt, von dem aus die Anwendung nach pureQuery die SQL-Anweisung definiert Punkt, von dem aus die Anwendung die SQL-Anweisung ausführt
Die Anwendung führt eine SQL-Anweisung über prepareStatement-APIs aus; die Methoden prepareStatement und execute werden an verschiedenen Stellen im Code aufgerufen. Die Codezeile, in der die Anwendung die Methode prepareStatement() aufruft. Die Codezeile, in der die Anwendung die Methode execute() aufruft.
Die Anwendung führt eine SQL-Anweisung über prepareStatement-APIs aus; die Methoden prepareStatement und execute befinden sich in derselben Zeile. Die Codezeile, in der die Anwendung die Methode prepareStatement() aufruft. Die Codezeile, in der die Anwendung die Methode execute() aufruft.
Die Anwendung führt eine SQL-Anweisung über Statement-APIs aus. Die Codezeile, in der die Anwendung die Methode execute() aufruft. Die Codezeile, in der die Anwendung die Methode execute() aufruft.
Die Anwendung führt eine SQL-Anweisung aus, die Teil eines Stapels von Anweisungsobjekten ist; die Anweisungen sind heterogen. Die Codezeile, in der die Anwendung die Methode addBatch() aufruft. Die Codezeile, in der die Anwendung die Methode executeBatch() aufruft.
Die Anwendung führt eine SQL-Anweisung aus, die Teil eines Stapels von PreparedStatement-Objekten ist. Die Codezeile, in der die Anwendung die Methode prepareStatement() aufruft. Die Codezeile, in der die Anwendung die Methode executeBatch() aufruft.
Die Anwendung führt eine SQL-Anweisung aus, die Teil eines Stapels von PreparedStatement-Objekten ist; die Anweisungen sind heterogen. Für jedes PreparedStatement-Objekt die Codezeile, in der die Anwendung die Methode prepareStatement() aufruft. Für jedes PreparedStatement-Objekt die Codezeile, in der die Anwendung die Methode executeBatch() aufruft.

Sie können die Stack-Traces in Ihren pureQueryXML-Dateien als Unterstützung zur Fehlerbehebung in Ihren Anwendungen verwenden. pureQuery enthält drei Eigenschaften, mit denen Sie den Inhalt, die Anzahl und die Länge von Stack-Traces steuern können.

packagePrefixExclusion
Mit dieser Eigenschaft können Sie Stack-Trace-Einträge für Java™-Pakete ausschließen, die nicht zu Ihrer Anwendung gehören.
maxStackTracesCaptured
Mit dieser Eigenschaft können Sie die maximale Anzahl Definitions-Stack-Traces und Ausführungs-Stack-Traces festlegen, die pureQuery für jede erfasste SQL-Anweisung erfasst.
stackTraceDepth
Mit dieser Eigenschaft können Sie die maximale Anzahl Einträge festlegen, die pureQuery für jeden Stack-Trace erfasst.

Weitere Informationen zu diesen Eigenschaften finden Sie in SQL-Anweisungen für Clientoptimierung erfassen.


Feedback