Обсуждение: More Verbose Logging of Statements

Поиск
Список
Период
Сортировка

More Verbose Logging of Statements

От
Rob Kirkbride
Дата:
Hi,

I've been trying to understand the documentation at
http://www.postgresql.org/docs/8.0/static/runtime-config.html but I
can't get it to put into my logfile the actual contents of prepared
statement parameters. I just get $1, $2 etc. I'd like to show me what
those are either in the actual line or below I don't mind which.

Is there anyway to do this?

Thanks,

Rob


Re: More Verbose Logging of Statements

От
Kris Jurka
Дата:

On Thu, 10 Nov 2005, Rob Kirkbride wrote:

> I've been trying to understand the documentation at
> http://www.postgresql.org/docs/8.0/static/runtime-config.html but I can't get
> it to put into my logfile the actual contents of prepared statement
> parameters. I just get $1, $2 etc. I'd like to show me what those are either
> in the actual line or below I don't mind which.
>

No, the JDBC driver uses the new extended query protocol by default which
the server does not log very well.  You could make the driver fallback to
the older protocol by using the URL parameter ?protocolVersion=2 which is
logged fully, but then you're not really testing the same thing if you are
trying to debug a problem or do a performance analysis.

Kris Jurka

Re: More Verbose Logging of Statements

От
Rob Kirkbride
Дата:
Kris Jurka wrote:

>
>
> On Thu, 10 Nov 2005, Rob Kirkbride wrote:
>
>> I've been trying to understand the documentation at
>> http://www.postgresql.org/docs/8.0/static/runtime-config.html but I
>> can't get it to put into my logfile the actual contents of prepared
>> statement parameters. I just get $1, $2 etc. I'd like to show me what
>> those are either in the actual line or below I don't mind which.
>>
>
> No, the JDBC driver uses the new extended query protocol by default
> which the server does not log very well.  You could make the driver
> fallback to the older protocol by using the URL parameter
> ?protocolVersion=2 which is logged fully, but then you're not really
> testing the same thing if you are trying to debug a problem or do a
> performance analysis.
>
OK. Thanks. :-( It's to debug things like where you get constraint
violation on keys but you don't what the key was. I guess I'd have to
try and get the client to do it - hibernate - but this tends to print $s
as well!

Thanks,

Rob

Re: More Verbose Logging of Statements

От
Guillaume Cottenceau
Дата:
Rob Kirkbride <rob 'at' rkcomputing.co.uk> writes:

> OK. Thanks. :-( It's to debug things like where you get constraint
> violation on keys but you don't what the key was. I guess I'd have to
> try and get the client to do it - hibernate - but this tends to print
> $s as well!

If it could be of some help - I use PreparedStatement#toString()
in my code for such things. It has the problem of not quoting the
strings properly but other that that it's cool. Maybe hibernate
has some sort of options for doing this? (I don't use it) (yet)

--
Guillaume Cottenceau