On Mon, Sep 01, 2008 at 05:01:40PM -0700, Jonathan Leffler wrote:
> On Mon, Sep 1, 2008 at 3:30 PM, Tim Bunce <[EMAIL PROTECTED]> wrote:
> 
> > On Mon, Sep 01, 2008 at 01:31:57PM +0200, H.Merijn Brand wrote:
> > > On Sun, 31 Aug 2008 23:56:43 +0100, Tim Bunce <[EMAIL PROTECTED]>
> > > wrote:
> > >
> > > > Having said all that, I can see some value in having a separate driver
> > > > trace level. I suggest a few of the "middle 16 bits" are given over to
> > >
> > > IMHO 4 bits will do (0..15). If that is correct, I'll also change the
> > > levels to leave the basic levels 1 and 2 alone.
> >
> > Actually I'd rather squeeze the levels concept down to 0..7 for both DBI
> > and DBD levels in order to make two more flag bits available and to
> > encourage greater use of flags.
> 
> FWIW, DBD::Informix uses trace levels from about 3 to 9 (leaving 1 and 2 for
> DBI output only).
> 
> Whether that matters is another issue, but 4 bits would be preferred (though
> three is not the end of the world).  Unless you have a use for those 2 bits
> at the back of your mind...

Although it looks like the trace level range is being reduced, it's
effectively being increased. It's just that instead of a single range
you'd now have two.

The current highest levels of driver internals tracing would then
be controlled via the DBD trace level. Something like this:

    $h->trace("2,-6"); # DBI trace level 2, DBD trace level 6

That gives you more control because you can enable higher levels of DBD
tracing without being swamped by higher levels of DBI tracing.

You could/should also define some trace flags for specific topics to
give finer control. Something like this:

    $h->trace("2,-4,ix_charset");

Tim.

Reply via email to