Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi TraceService von IbDACnutzen (https://www.delphipraxis.net/190909-traceservice-von-ibdacnutzen.html)

MyRealName 18. Nov 2016 13:17

Datenbank: Firebird • Version: 3 • Zugriff über: IBDAC

TraceService von IbDACnutzen
 
Hallo,

hat mal jemand den TIBCTraceService genutzt ?
Ich schaffe es, dass er sich verbindet und eine trace session erstellt. Und ich kriege auch den Output.

Code:
begin
  IBCTraceService1.Attach;
  IBCTraceService1.StartTrace;
  Repeat
    S := IBCTraceService1.GetNextline;
    ListBox1.Items.Add(S);
  Until S = '';
Das ist der letzte Versuch, sehe aber null output nachdem die nachricht kam dass eine Session mit ID X erstellt wurde.

Hat jemand Erfahrung damit ? IbDAC kommt ohne Tracer demos, ohne Servicedemos generell. Aber Backup/Restore etc geht. Im Forum finde ich auch nichts bei denen.

Danke schonmal,
Helge

tsteinmaurer 18. Nov 2016 15:18

AW: TraceService von IbDACnutzen
 
Zitat:

hat mal jemand den TIBCTraceService genutzt ?
FB TraceManager ist mit IBDac geschrieben: http://www.upscene.com/fb_tracemanager/
Zitat:

Das ist der letzte Versuch, sehe aber null output nachdem die nachricht kam dass eine Session mit ID X erstellt wurde.
Hast du dich mit der generellen Funktionsweise der TraceAPI mal vertraut gemacht? Wenn nein, dann ist vielleicht mein Artikel hier ein guter Einstieg: http://www.iblogmanager.com/download...rebird_2.5.pdf

Vielleicht werden Dinge dann schon etwas klarer. Dass du z.B. eine "Trace-Configuration" in Form einer Text-Datei benötigst oder als Komponenten-Properties, die du beim Trace-Start mitangibst. So definierst du, an welchen Trace-Events du überhaupt interessiert bist. Denke mal, dass das dein Problem ist.

Habe leider meinen Quellcode gerade nicht bei der Hand, um dir etwas handfestes zu geben.

MyRealName 18. Nov 2016 15:48

AW: TraceService von IbDACnutzen
 
here is my IBCTraceService DFM config :

Code:
object IBCTraceService1: TIBCTraceService
    Port = '3050'
    LoginPrompt = False
    Username = 'SYSDBA'
    Password = 'xxxxx'
    ClientLibrary = 'fbclient.dll'
    Config.Strings = (
      '<database F:\DB\CDA143A.fdb>'
      ' enabled true'
      ' log_statement_prepare true'
      ' log_statement_free true'
      ' log_statement_start true'
      ' log_statement_finish true'
      ' time_threshold 0'
      '</database>')
    Left = 184
    Top = 56
  end
Das grosse Problem : Keine richtige Doku in IbDAC was wozu ist. Oder eben ein Beispiel.
Für die Config-Property steht was in der Hilde, da habe ich mir das auch rausgezogen, was man tracen kann, aber zum Bsp. die datenbank habe ich eien ahnung ob die mit Alias im Server konfiguriert sein muss oder (wie ich) eben einen absoluten Pfad angeben kann

tsteinmaurer 18. Nov 2016 16:17

AW: TraceService von IbDACnutzen
 
Zitat:

zum Bsp. die datenbank habe ich eien ahnung ob die mit Alias im Server konfiguriert sein muss oder (wie ich) eben einen absoluten Pfad angeben kann
Du gibst hier eine RegEx an, d.h. wenn du keine Platzhalter verwendest, dann muss ein Client-Connect exakt diese Schreibweise als DB verwenden, damit im Trace was rauspurzelt.

Du könntest zum Testen einfach mal folgendes versuchen:

Code:
<database %CDA143A%>
...
</database>
Wie verbinden sich die Clients zu deiner DB, d.h. welchen Connect-String verwenden sie?

MyRealName 18. Nov 2016 17:12

AW: TraceService von IbDACnutzen
 
Der ConnectString ist :

Code:
Database=F:\DB\CDA143A.FDB;User ID=SYSDBA;Password=xxxxx;Client Library=fbclient.dll;Login Prompt=False
Das connect funktioniert, nur : Screenshot danach kommt nichts mehr.
Hab auch Config umgestellt auf :

Code:
<database %CDA143%>
  enabled true
  log_statement_prepare true
  log_statement_free true
  log_statement_start true
  log_statement_finish true
  time_threshold 0
</database>

tsteinmaurer 18. Nov 2016 17:52

AW: TraceService von IbDACnutzen
 
Mit ConnectString meine ich die Client-Anwendung, die sich zur Datenbank verbindet und SQLs ausführt und nicht deine Trace-Anwendung. Vielleicht ist das falsch rübergekommen.

Rein von der Datenbankfilter-RegEx sollte das schon klappen. Solltest Du vielleicht Firebird 3.0.0 einsetzen, dann ist noch zu erwähnen, dass es hier einen Bug in der TraceAPI gab: http://tracker.firebirdsql.org/browse/CORE-5203

Ist in 3.0.1 gefixt.

MyRealName 18. Nov 2016 21:28

AW: TraceService von IbDACnutzen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Ich habe firebird 3.0.1 seit enigen Wochen, 3.0 hatte ich damals nicht zum Laufen bekommen, das mit dem Standard Nutzer ist sehr verwirrend. Ich weiss noch garnicht, wie ich das bei unseren Kunden machen soll, wenn ich denen das auf FB3 umstelle.

ich hänge mal das Projekt mit dran, vllt. wärest Du so freundlich mal einen Blick drauf zu werfen, ich bin offiziell gescheitert :S

Danke schonmal,
Helge

tsteinmaurer 19. Nov 2016 08:28

AW: TraceService von IbDACnutzen
 
Gut, daran hätte ich auch gleich denken können. :-D

In Firebird 3 hat sich die Notation in der Trace-Config geringfügig geändert. Versuch mal etwas in Richtung:

Code:
database = %CDA143%
{
  enabled = true
  log_statement_prepare = true
  log_statement_free = true
  log_statement_start = true
  log_statement_finish = true
  time_threshold = 0
}

MyRealName 20. Nov 2016 16:14

AW: TraceService von IbDACnutzen
 
trotzdem nichts :(

hab es mit einem query im gleichen programm versucht und mit einem 2. programm. Der tracer bleibt still

tsteinmaurer 21. Nov 2016 07:49

AW: TraceService von IbDACnutzen
 
Noch ein Schuss ins Blaue: Dein TraceService attached sich default-mäßig zu localhost/3050. Dein Datenbank-Connect verwendet "F:\...", d.h. kann womöglich in eine Embedded Connection enden und dadurch siehst du keine Trace-Events. Versuch mal den DB-Connect, wo du die SQLs ausführst, mit "localhost/3050:F:\..." zu machen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:07 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz