![]() |
Datenbank: Firebird • Version: 1.5 • Zugriff über: IBX
Firebird Server SQL-Log
Hi
Da ich im Moment das Problem habe, das irgendeine SQL Abfrage bei einem Kunden den Firebird Server sporadisch (1-2 mal am Tag) für 5-10 Minuten auf 100% bringt (und ich aber eigentlich keien Abfragen habe, die so lange dauern dürften) bin ich schon verzweifelt am suchen, wo das sein kann. Da hätte ich mir jetzt gedacht, wenn man den firebird server mal mit einer zusätzlichen Debug option oder so starten könnte, wo alle SQL Statements mitgeloggt werden (eventuell IP, dauer und so) wäre das natürlich extrem hilfreich. Gibt es eventuell sogar so ne option (denke mir war beim testen vom FB Server selbst auch sicher hilfreich) Habe mit verschiedenen Tools schon probiert (TIBSQLMonitor - nix zusammen gebracht) FlexTrace - gut aber leider nur für den Client gibt es noch andere Tools für den Server ? |
Re: Firebird Server SQL-Log
Du sagst, daß zu diesem Zeitpunkt keine Abfargen laufen. Dann wird ein Logging auch nicht viel bringen.
Es könnte z.B. die Garbage Collection sein. wenn diease aber so lange dauert, düfte die Tranaktionssteuerung des Programmes fehlerhaft sein. |
Re: Firebird Server SQL-Log
ne, es laufen schon Abfragen, eine menge sogar (von bis zu 10 verschiedenden rechnern)
aber eigentlich dürfte keine einzelne Abfrage so lange dauern (und da anscheinend doch, müsste ich wissen, welche das ist, damit ich diese umändern kann Indexe dazu Filtern oder was auch immer) |
Re: Firebird Server SQL-Log
Dann könntest du Trigger verwenden, welche dir alle Abfragen loggen.
|
Re: Firebird Server SQL-Log
hmmm also das ganze mit trigger machen ... kommt mir doch etwas umständlich vor
mir wär eine Debug option vom FB-Server schon recht ;) Kann ich beim FB 1.5 überhaupt Trigger machen, die auf alle Tabellen triggern ? (Muß leider gestehen weiss das nicht) oder ein externes Prrformance Tool, das mir sagt welche SQL-Statemants beim FB Server lange brauchen ... sowas rbauchen doch sicher auch andere leute um DB Anwendungen zu optimieren oder etwa nicht ? |
Re: Firebird Server SQL-Log
|
Re: Firebird Server SQL-Log
Hallo,
IBHeartbeat benutzt afaik die neuen Performance Tabellen von ib6.5, FB kennt die nicht. Ich benutze den IBPlanalyzer von Craig Stuntz. ![]() (Anmeldung bei BDN). Bei Bedarf kann ich dir den auch zuschicken. Ich würde auch mal den Speicherbedarf des Servers rpüfen, wird der immer größer, hast du in der Tat ein Transaktionsprobklem (die Transaktionsmaske des Servers wird immer größer) Um di9e Garbage-Collection auszuschliesen, kannst du das Sweep-Interval ja mal auf 0 setzen (gfix -housekeeping 0 ....) oder z.B. per ibexpert. Zu einer "nichtproduktiven Zeit" (22:00) wird dann gfix -sweep ... aufgerufen. Das kann z.B. über geplante Vorgänge passieren. Heiko |
Re: Firebird Server SQL-Log
Der IBPlanaylzer ist ein Tool zum analysieren von SQL-Querries oder ? Ich hasbe ja das Problem, das ich die Querry noch nicht identifiziert habe, die das problem verursacht ...
Ich glaube auch nicht, das es der GC oder sonstiges ist. Transaktionen lasse ich nie lange offen (ausser wenn der server dann für die 5-10 minuten ne große auslastung zeigt) Ich werde mal den FlexTrace bei nem Client und nem ServerModul ranhängen und gucken, ob mir das was bringt. Ansonsten spiele ich mit dem Gedanken den FB v1.5.3 als Source runterzuladen und neu zu compilieren und dann mal ne log funktionen einzubauen ... da ich mittlerweile auch hier schon stunden über stunden in das einbauen von log am client gesteckt habe. |
Re: Firebird Server SQL-Log
Dann wäre es ja billiger einen fertigen LogManager einzusetzen oder halt die Trigger selber zu implementieren.
|
Re: Firebird Server SQL-Log
Ja billiger auf jeden Fall, nur habe ich irgendwie das Gefühl, das mir so ein fertiger LogManager nicht das bringt, was ich will.
Ich habe hier 384 Tabellen, die müssen dann ja alle mit mindestens 8 Trigger überwacht werden (AFTER/BEFORE INSERT,DELETE,SELECT,UPDATE) und dann muß man ja die Daten so extrahieren, das man sieht, wie lange die Aktion gedauert hat (also AFTER-BEFORE) ... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:11 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz