2
Applications send queries to Firebird and receive results via TCP/IP…
www.ibsurgeon.com
4
This is exactly what FBScanner does:
You can see and log: - SQL queries (statements,
parameters, plans)- Connections (IP/names,
versions of clients, times)- Users (names, times, etc)- Transactions - Errors and their reasons
(10054, 10038, etc)
www.ibsurgeon.com
5
…not only see and log, but take full control and manage it
• Filter (allow/deny) connections by IPs/Names
• Identify and kill zombie connections
• Set priorities for Classic instances • Mark and manage everything:– users, connections, applications,
SQLs statements , etc
www.ibsurgeon.com
6
Tags are COOL!
Tags are special marks set by developer in the SQL source code of applications
Tags help to quickly answer the following (very frequent) questions:
• What program has launched this query? • What is the transaction for this query? • Where is this [very long] query from?
www.ibsurgeon.com
7
Tags are not only COOL, they are easy!
• Tags allow to assign readable identifiers (names) to Connections, Queries and Transactions. You just need to add these commentaries to the text of SQL:
SELECT COUNT(*) FROM RDB$DATABASE/* FBSCANNER$CON_NAME=My_application;FBSCANNER$TR_NAME=Read_only_transaction_N1;FBSCANNER$ST_NAME=Customers_list_query; */
www.ibsurgeon.com
8
FBScanner also can identify and log security breaches• Unsuccessful login attempts• 100% logging of SQLs, connections
and other traffic – queries are stored with information
about their connection and transaction
• All transactions are logged, even rolled back
Who
? W
hen?
Wha
t?
www.ibsurgeon.com
9
Scenarios
• Let’s quickly walk through the most popular scenarios where FBScanner is used:– General monitoring– Connections’ management– Debug and test applications– Logging
www.ibsurgeon.com
General monitoring•What server is doing? CPU/traffic/queries•Who is connected to this or that database?• Connections life time. Are any “zombies” at server?• Connections activity•What 20% queries create 80% of server workload?
www.ibsurgeon.com
Connections’ management
• Filter and close connections (kill and safe disconnect are supported)• Set priorities for connections (Classic only) – manually and automatically
(rule-based)
www.ibsurgeon.com
Debug and test applications• Error in transaction management– OAT (Oldest Active Transaction). Who lost the transaction?– Named connections, transactions, queries
• Full control– Developer can see queries from own and third-party
applications (closed sourced)– It does not depend on client libraries
• Problem detection– Wrong client library version– Bad queries
www.ibsurgeon.com
Logging• Connections– All information from FBScannerViewer
(database , login, role, IP, PID, etc)
• Transactions– Parameters tpb_nnn– Result (commit or rollback)
• Queries– SQL statement text with/without parameters– Start/end time, CPU Time– Wait time– Plans (extremely useful to find performance bottlenecks!)
www.ibsurgeon.com
Overhead of FBScanner – less than 15% (with 250 connections)
www.ibsurgeon.com
15
Licensing
• Permanent per server – EUR 199/USD 299• For Tech Support – EUR 990/USD 1399 – Allows to setup up to 250 servers for 1 month each
• For ISV (run time bundles) – special prices and royalty agreement (no up front payments)
• Purchase here http://www.ibsurgeon.com/products/firebird_interbase/monitoring/FBScanner
www.ibsurgeon.com
16
What next?Download trial http://www.ibsurgeon.com/download/FBScannerTrial.zip
Read feature matrixhttp://www.ibsurgeon.com/download/docs/fbscanner_feature_matrix_eng.pdf
Ask your questions:General – [email protected] ISVs – [email protected]
www.ibsurgeon.com