Ablaufverfolgung der Verbindung (Delegattreiber-Tutorial)

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu Tutorial: Verwenden von dbExpress-Delegattreibern

Damit die Verbindungsaktivität verfolgt werden kann, müssen Sie den Parameter DelegateConnection der Verbindung setzen.

DBXTrace ObjectInspector.PNG

Dies kann auf mehrere Arten erfolgen:

  • Bearbeiten Sie im Objektinspektor die Eigenschaften der Komponente TSQLConnection.
  • Ändern Sie die Verbindung im Fenster Daten-Explorer.
  • Fügen Sie in den Abschnitt [DGCONNECTION] der Datei dbxconnections.ini die Zeile DelegateConnection=DBXTraceConnection ein.

Tipp: Informationen zum Durchführen der Ablaufverfolgung und des Poolings für eine Verbindung durch Ändern der Datei dbxconnections.ini finden Sie in C:\Users\Public\Documents\Embarcadero\Studio\22.0\dbExpress\22.0.

Der einfachste Weg ist die Bearbeitung der Eigenschaften von TSQLConnection im Objektinspektor.

Im vorherigen Schritt wurde die Eigenschaft Driver von SQLConnection1 (TSQLConnection) beim Setzen der Eigenschaft ConnectionName auf DGCONNECTION automatisch auf Interbase gesetzt.

Setzen Sie nun mit dem Dropdown-Menü die Eigenschaft DelegateConnection auf DBXTrace. Die Eigenschaft DelegateName wird dabei automatisch auf DBXTrace gesetzt. Setzen Sie die Eigenschaft TraceFile auf "c:\temp\dbxtrace.txt". In diesem Verzeichnis wird eine .txt-Datei erstellt, in die das Protokoll geschrieben wird.

Sie können die Flags der Eigenschaft TraceFlags aktivieren oder deaktivieren, um festzulegen, was verfolgt werden soll. Um die Protokollanweisungen auf der Treiberebene einzusehen, müssen Sie TraceDriver auf True setzen.

Tipp: Wenn Sie eine Konsolenanwendung verwenden und der Parameter TraceFile nicht angegeben ist, wird die Ausgabe im Konsolenfenster angezeigt.

Jetzt wird der Ablauf der Verbindung verfolgt und eine Protokolldatei entsprechend dem Parameter TraceFile angelegt.

Führen Sie zum Testen der Ablaufverfolgung der Verbindung die Anwendung aus, und stellen Sie eine Verbindung zu DGCONNECTION her. Die Ausgabedatei sieht etwa folgendermaßen aus:

Log Opened ==========================================
{CONNECT        } ConnectionC1.GetConnectionProperties;
{CONNECT        } ConnectionC1.Open;
{COMMAND        } CommandC1_1 := ConnectionC1.CreateCommand;
{COMMAND        } CommandC1_1.CommandType := 'Dbx.MetaData';
{COMMAND        } CommandC1_1.Text := 'GetTables "c:\Embarcadero\InterBase\examples\database\employee.gdb"."sysdba".% Table;View;';
{COMMAND        } ReaderC1_1_1 := CommandC1_1.ExecuteQuery;
{READER         }  {CatalogName  TDBXTypes.WideString }
{READER         }  {SchemaName  TDBXTypes.WideString }
{READER         }  {TableName  TDBXTypes.WideString }
{READER         }  {TableType  TDBXTypes.WideString }
{READER         }  { ReaderC1_1_1 closed.  11 row(s) read }
{READER         } FreeAndNil(ReaderC1_1_1);
{COMMAND        } FreeAndNil(CommandC1_1);
{CONNECT        } ConnectionC1.GetConnectionProperty; 


Die Protokolldatei zeigt den tatsächlichen Delphi-Quellcode, der ausgeführt wird.


Weiter

Zurück