#1
  1. No Profile Picture
    Contributing User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Nov 2009
    Posts
    74
    Rep Power
    5

    How to Monitor Firebird on production servers?


    Hi,

    Monitoring the Firebird database could be useful on development and production servers.

    I am wondering what it would take to monitoring a Firebird database.

    Till now I only consult the firebird.log for debugging and performance.
    It would be nice if I could retrieve errors and warnings by mail / together with other treads from my infrastructure...

    How to send relevant info trough SNMP that can be accepted by monitor tools like Zenoss?

    Zenoss e.g. is a SNMP monitoring tool that provides templates for Linux and MySQL. A Firebird template is absent. I presume this is the wrong place to ask how to build a Zenoss/Firebird template. But maybe you can provide some directions or know somebody that is working on this... In that case I want to offer my support and help.

    Any suggestions to accomplish this?

    What are the most general approaches to monitoring Firebird on production servers?

    Thank you.

    R.
  2. #2
  3. No Profile Picture
    Contributing User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Nov 2009
    Posts
    74
    Rep Power
    5
    So far I found 4 options:

    IBAnalyst:
    http://www.ib-aid.com/products/firebird_interbase/monitoring/IBAnalyst

    Sinatica:
    http://www.sinatica.com/

    FBScanner (performance analysing):
    http://www.ib-aid.com/products/firebird_interbase/monitoring/FBScanner

    gfix and gstat (The standard bin tools of Firebird):

    http://www.destructor.de/firebird/index.htm
    http://www.firebirdsql.org/pdfmanual/Firebird-gstat.pdf
    (This pdf is not easy but nessesary to understand in case of database monitoring. )

    The manual says:

    If max dup is getting close to total dup, then it is a reasonable assumption to conclude that it may be that the
    index is so poor in selectivity that it may never be used in queries.
    and also:

    Ideally, you would like
    to see all the pages being filled to between 80 and 99%. If, on the other hand, the report showed that the pages
    were all lightly filled - say less than 60% - the index would be a good candidate for a rebuild exercise.
    about headerinfo:

    Many web sites, books, manuals (previously including this one) explain that the automatic sweep is activated
    when OAT - OIT is greater than the sweep interval. This is not the case as explained by Vlad Khorsun,
    one of the Firebird developers, who explained that it is when OST - OIT is greater than the threshold that
    the sweep is activated.
    So e.g. I therefore assume this is not good:

    Index BESTREGLEV (3)
    Depth: 2, leaf buckets: 51, nodes: 69604
    Average data length: 0.00, total dup: 69526, max dup: 16561
    Fill distribution:
    0 - 19% = 0
    20 - 39% = 0
    40 - 59% = 23
    60 - 79% = 1
    80 - 99% = 27

    Index BESTREGOMS (4)
    Depth: 2, leaf buckets: 72, nodes: 69604
    Average data length: 0.19, total dup: 68923, max dup: 13381
    Fill distribution:
    0 - 19% = 0
    20 - 39% = 0
    40 - 59% = 61
    60 - 79% = 1
    80 - 99% = 10


    A general source:

    http://www.firebirdfaq.org/faq95/

    So, does this overview include everything?
    What is the number one tool in your opinion?
    All look very promising, trial licence are available sometimes up to one year!
    (And I think that rocks).

    Last question: is analysing the report task of the systemadmin or database expert?

    (I think both, the systemadmin is retrieving the values and provides this information. The database expert is taking care of a good design. Sometimes the systemadmin and developer should work closely togehter. We are one team right?)

    Anyway:

    Literature study done, looking forward to your opinion and hope it helps.
  4. #3
  5. No Profile Picture
    Contributing User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Aug 2004
    Location
    Sarajevo, Bosnia
    Posts
    120
    Rep Power
    14
    Originally Posted by rapgame
    Hi,

    Monitoring the Firebird database could be useful on development and production servers.

    I am wondering what it would take to monitoring a Firebird database.
    Do you know about monitoring tables feature introduced in later versions of firebird? Also, there is trace api...
  6. #4
  7. No Profile Picture
    Contributing User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Nov 2009
    Posts
    74
    Rep Power
    5
    Originally Posted by fikret
    Do you know about monitoring tables feature introduced in later versions of firebird? Also, there is trace api...
    Hi Fikret,

    Thanks for the tip.

    I'm reading about these features and try to compare them with the other.

    Feedback, overviews, etc are welcome. Could you provide an overview maybe?

    (The goal is to understand Firebird and explain performance issues. I think this kind of info could be the key to succes.)

    R.
  8. #5
  9. No Profile Picture
    Contributing User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Oct 2010
    Posts
    43
    Rep Power
    4
    Originally Posted by rapgame
    Hi Fikret,

    Thanks for the tip.

    I'm reading about these features and try to compare them with the other.

    Feedback, overviews, etc are welcome. Could you provide an overview maybe?

    (The goal is to understand Firebird and explain performance issues. I think this kind of info could be the key to succes.)

    R.
    If you are using Firebird 2.5, then the Trace API is another option. This gives you a continuous stream of executed events. There is a tool called FB TraceManager by Upscene Productions, which makes the usage of the TraceAPI very easy. Until the end of 2011, there is a discount of 40%, just in case somebody is interested.

IMN logo majestic logo threadwatch logo seochat tools logo