IBSurgeon Performans Analizi için Firebird izi nasıl toplanır
Lütfen not edin: izleme güvenlidir, üretimde başlatılabilir, aşağıda önerilen yapılandırma kullanıldığında performansı etkilemez.
- Em Português - Como coletar Firebird Trace para IBSurgeon Performance Analysis?
- In deutscher Sprache - Wie erfasse ich Firebird-Tracees für die IBSurgeon-Leistungsanalyse?
Bu talimat, vanilla Firebird kullanıcıları için IBSurgeon Performance Analysis’ın (cc.ib-aid.com aboneliğinin bir parçası) kullanımını açıklar (HQbird kullanıcıları için arayüzde “Performance” sekmesinde mevcuttur).
Firebird 5.0, 4.0 ve 3.0 için İzleme
Adım 1 - Yapılandırma dosyası
Aşağıdaki yapılandırmayı fbtrace30.conf dosyasına kopyalayın veya hazır dosyayı buradan indirin.
database
{
enabled = true
time_threshold = 100
log_connections = true
log_statement_finish = true
log_errors = true
log_initfini = false
print_plan = true
#explain_plan = false
print_perf = true
max_sql_length = 65000
max_arg_length = 240
max_arg_count = 50
}
Dosyayı boşluksuz bir klasöre kaydedin, örneğin, C:\temp\fbtrace30.conf veya /opt/fbtrace30.conf
Adım 2 - Yapılandırmayı test edin
Yapılandırmanın çalıştığını kontrol etmek için fbtracemgr’ı çalıştırın:
Windows
Komut istemini açın (cmd.exe çalıştırın), Firebird klasörüne gidin (C:\Program Files\Firebird\Firebird_3.0. veya C:\HQbird\Firebird30 olabilir) ve çalıştırın (masterkey yerine gerçek SYSDBA şifrenizi kullanın)
fbtracemgr.exe -se localhost:service_mgr -user SYSDBA -pass masterkey -start -conf C:\temp\fbtrace30.conf
Linux
Terminali açın ve ardından Firebird bin klasöründen (/ opt/firebird/bin veya /usr/local/bin) fbtracemgr’ı çalıştırın
./fbtracemgr -se localhost:service_mgr -user SYSDBA -pass masterkey -start -conf /opt/fbtrace30.conf
Sonuç olarak, komut isteminde şuna benzer bir çıktı göreceksiniz:
Trace session ID 2 started
2021-05-26T10:23:48.5690 (2996:00000000018E0040) ATTACH_DATABASE
C:\HQBIRD\FIREBIRD30.ECURITY3.FDB (ATT_6189, SYSDBA:NONE, NONE, )
İzlemeyi Ctrl-C ile durdurun (ve gerekirse Enter’a basın).
Adım 3 - Günlüğü toplayın
Önceki adımda hata görmüyorsanız, çıktıyı günlük dosyasına toplamak için izlemeyi çalıştırın, örnekte c:\temp\log1.log:
Windows
fbtracemgr.exe -se localhost:service_mgr -user SYSDBA -pass masterkey -start -conf C:\temp\fbtrace30.conf > c:\temp\log1.log
Linux
./fbtracemgr -se localhost:service_mgr -user SYSDBA -pass masterkey -start -conf /opt/fbtrace30.conf > log1.log
Sorunlu SQL sorgularını yakalamak için bir süre çalışır durumda bırakın (minimum 3-4 dakika, önerilen 1 saattir) ve ardından fbtracemgr’ı Ctrl-C ile kesintiye uğratın.
Adım 4. Günlükleri yükleyin
Ortaya çıkan günlük dosyasını cc.ib-aid.com üzerindeki Trace Visualization’a yükleyin.
Lütfen not edin, günlük dosyasının boyutu 20Mb’den büyükse, zipleyin (standart Windows zip veya Linux zip veya 7zip ile) ve sıkıştırılmış günlüğü yükleyin.
Sonraki Adımlar
Günlük analizi örneğini burada görün: /articles/example-of-performance-analysis
Firebird 2.5 için İzleme
Adım 1 - Yapılandırma dosyası
Aşağıdaki yapılandırmayı fbtrace25.conf dosyasına kopyalayın veya hazır dosyayı buradan indirin.
<database>
enabled true
log_connections true
log_statement_finish true
log_errors true
print_plan true
print_perf true
time_threshold 200
max_sql_length 65000
max_blr_length 500
max_dyn_length 500
max_arg_length 80
max_arg_count 50
</database>
Dosyayı boşluksuz bir klasöre kaydedin, örneğin, C:\temp\fbtrace25.conf veya /opt/fbtrace25.conf
Adım 2 - Yapılandırmayı test edin
Yapılandırmanın çalıştığını kontrol etmek için fbtracemgr’ı çalıştırın:
Windows
Komut istemini açın (cmd.exe çalıştırın), Firebird’ün Bin klasörüne gidin (C:\Program Files\Firebird\Firebird_2.5.in veya C:\HQbird\Firebird25.in olabilir) ve çalıştırın (masterkey yerine gerçek SYSDBA şifrenizi kullanın)
fbtracemgr.exe -se localhost:service_mgr -user SYSDBA -pass masterkey -start -conf C:\temp\fbtrace25.conf
Sonuç olarak, komut isteminde şuna benzer bir çıktı göreceksiniz:
Trace session ID 2 started
2021-05-26T10:23:48.5690 (2996:00000000018E0040) ATTACH_DATABASE
C:\HQBIRD\FIREBIRD30.ECURITY3.FDB (ATT_6189, SYSDBA:NONE, NONE, )
Linux
Terminali açın ve ardından Firebird bin klasöründen (/opt/firebird/bin veya /usr/local/bin) fbtracemgr’ı çalıştırın
./fbtracemgr -se localhost:service_mgr -user SYSDBA -pass masterkey -start -conf /opt/fbtrace25.conf
Adım 3 - Günlükleri toplayın
Ekranda hata görmüyorsanız, verilerin çıktısını dosyaya toplamak için izlemeyi çalıştırın, örnekte c:\temp\log1.log:
Windows
fbtracemgr.exe -se localhost:service_mgr -user SYSDBA -pass masterkey -start -conf C:\temp\fbtrace25.conf > c:\temp\log1.log
Linux
./fbtracemgr -se localhost:service_mgr -user SYSDBA -pass masterkey -start -conf /opt/fbtrace25.conf > log1.log
Sorunlu SQL sorgularını yakalamak için bir süre çalışır durumda bırakın (minimum 3-4 dakika, önerilen 1 saattir) ve ardından fbtracemgr’ı Ctrl-C ile kesintiye uğratın.
Adım 4. Sonuçları yükleyin
Ortaya çıkan günlük dosyasını cc.ib-aid.com üzerindeki Trace Visualization’a yükleyin.
Lütfen not edin, günlük dosyası 20Mb’den büyükse sıkıştırın (standart Windows zip veya Linux gz veya 7zip ile) ve sıkıştırılmış günlüğü yükleyin. Sıkıştırılmış günlüğün boyutu 1Gb ile sınırlıdır, daha büyük günlük dosyaları silinecektir.
Giriş yapmak için bir hesabınız olması gerekir.
Giriş yaptıktan sonra, “Traces” widget’ının sağ üst köşesindeki “Upload” düğmesine tıklayın:

Ardından, diskteki izleme günlük dosyasını seçin (maks. 120Mb) ve Upload’a tıklayın:

Yükleme, internet bağlantınızın yükleme hızına ve genel bağlantıya bağlı olarak 1-2 dakika sürebilir. Sıkıştırılmış dosyalar, boyutları küçüldüğü için daha hızlı yüklenir!
Ardından yüklenen dosyanın “Processing” olarak göründüğünü göreceksiniz:

İşleme genellikle 1-2 dakika sürer. İşlemenin durumunu görmek için “Refresh” düğmesini kullanmanız gerekir.
İşleme tamamlandıktan sonra, performans özet raporuna (sütun “Trace summary report”, bağlantı “Html”) ve izlemenin grafiksel gösterimine (sütun ve bağlantı “Graphs”) bağlantılar göreceksiniz:

“Html"e tıklarsanız, izleme özet raporuyla yeni bir sayfa görünecektir.
Rapor, süreye göre sıralanmış (yani en uzun sorgular), sıklığa göre (en sık sorgular), zaman özetine göre (zamanın çoğunu alan SQL sorguları), getirmelere göre (en çok CPU tüketen sorgular), okumalara göre (disk okumaları) ve yazmalara göre (disk yazmaları) sıralanmış en iyi sorguların listelerini içerir.
Ayrıca, kaynakların çoğunu tüketen uygulamaları görebileceğiniz bir işlem özeti de vardır.

“Graphs"e tıklarsanız, her dakikaya göre gruplandırılmış (sorgu yürütmenin bitiş anına göre) en iyi sorgularla izleme günlüğünün grafiksel gösterimini göreceksiniz.
Belirli bir zaman anına tıklarsanız, izleme günlüğünden en iyi sorguları, planlarını, parametrelerini, istatistiklerini göreceksiniz:

Sonraki adımlar
Günlük analizi örneğini burada görün: /articles/example-of-performance-analysis