Re: logging statements from hibernate to valid SQL

From: Andy Dale <andy(dot)dale(at)gmail(dot)com>
To: Willy-Bas Loos <willybas(at)gmail(dot)com>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: logging statements from hibernate to valid SQL
Date: 2010-02-10 07:52:55
Message-ID: faa313131002092352k49021fbak3ebe6ffb68021722@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hi,

I would consider telling Hibernate to log the SQL it is generating to a
file. This can be done by setting the logging category org.hibernate.SQL to
debug, and for the parameters used in the prepared statements I think you
must also enable org.hibernate.type on debug (I have not managed to get this
working under JBoss though).

The produced output should look something like so:

2010-02-10 08:04:18,726 DEBUG [org.hibernate.SQL]
/* named HQL query MessagingSession.findMessages */ select
message0_.ID_ as col_0_0_
from
JBPM_MESSAGE message0_
where
message0_.DESTINATION_=?
and message0_.ISSUSPENDED_<>true
and (
message0_.EXCEPTION_ is null
)

Cheers,

Andy

On 9 February 2010 11:00, Willy-Bas Loos <willybas(at)gmail(dot)com> wrote:

> Hi,
> I'm trying to log statements that are being fired from hibernate, so that i
> can benchmark them without hibernate itself.
> I want to fire the SQL at the database directly and see what difference i
> can make by tweaking things.
>
> But when i set log_statement = 'all', the logging looks like this:
>
> 2010-02-09 00:12:32 CET LOG: execute <unnamed>: select nextval
> ('schema.sequence')
> 2010-02-09 00:12:32 CET LOG: execute <unnamed>: insert into schema.tabe
> (field1, field2, field3, ...) values ($1, $2, $3, ...)
> 2010-02-09 00:12:32 CET DETAIL: parameters: $1 = '1', $2 = NULL, $3 =
> '654767', ...)
>
> Now, how can i get these $1 etc values to be replaced with their values, so
> that i can produce valid SQL?
> Is there a postgresql.conf setting, or maybe some perl script that goes
> around?
> (of course, it's more than just 3 lines.... I can't do it by hand.)
>
> thx!
>
> WBL
>
> --
> "Patriotism is the conviction that your country is superior to all others
> because you were born in it." -- George Bernard Shaw
>

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Allan Kamau 2010-02-10 08:06:11 xpath
Previous Message Scott Marlowe 2010-02-10 07:52:39 Re: Best way to handle multi-billion row read-only table?