Performance tuning

Поиск
Список
Период
Сортировка
От Jean-Christophe Boggio
Тема Performance tuning
Дата
Msg-id 1147562491.20010301003219@thefreecat.org
обсуждение исходный текст
Список pgsql-general
Hi,

I'm trying to write a log analyzer for postgresql, mainly in order to
detect "expensive" queries and optimize them.

The simple extractor I have come up with works well but it's limited
by PostgreSQL's log system :

StartTransactionCommand
query: select * from identity where login='cat';
ProcessQuery
! system usage stats:
!       0.012632 elapsed 0.010000 user 0.000000 system sec
!       [0.030000 user 0.010000 sys total]
!       0/0 [0/0] filesystem blocks in/out
!       49/55 [309/285] page faults/reclaims, 0 [0] swaps
!       0 [0] signals rcvd, 0/0 [0/0] messages rcvd/sent
!       0/0 [0/0] voluntary/involuntary context switches
! postgres usage stats:
!       Shared blocks:         21 read,          0 written, buffer hit rate = 93.27%
!       Local  blocks:          0 read,          0 written, buffer hit rate = 0.00%
!       Direct blocks:          0 read,          0 written
CommitTransactionCommand

Would it be possible to have a unique identifier in the "query:" line
and another one at the beginning of the stats ?

Because when you have many queries per second, you get all the lines
mixed up and you don't know which result comes from which query so
the stats are useless.

Maybe the backend's PID if the backend both echoes the query and
displays the stats (but I guess the stats come from postmaster)...

If you can do anything, I'd love to try !

--
Jean-Christophe Boggio
cat@thefreecat.org
Independant Consultant and Developer
Delphi, Linux, Perl, PostgreSQL



В списке pgsql-general по дате отправления:

Предыдущее
От: Joseph Shraibman
Дата:
Сообщение: Re: 7.0 vs 7.1 running select count(*) FROM table WHERE (SELECT count(*) ) > 0;
Следующее
От: Francisco Reyes
Дата:
Сообщение: Re: Slowdown problem when writing 1.7million records