Forum und email
pg_trace

pg_trace

(PHP 4 >= 4.0.1, PHP 5)

pg_trace -- Enable tracing a PostgreSQL connection

Popis

bool pg_trace ( string pathname [, string mode [, resource connection]] )

pg_trace() enables tracing of the PostgreSQL frontend/backend communication to a file. To fully understand the results, one needs to be familiar with the internals of PostgreSQL communication protocol.

For those who are not, it can still be useful for tracing errors in queries sent to the server, you could do for example grep '^To backend' trace.log and see what queries actually were sent to the PostgreSQL server. For more information, refer to the PostgreSQL Documentation.

Seznam parametrů

pathname

The full path and file name of the file in which to write the trace log. Same as in fopen().

pathname

An optional file access mode, same as for fopen(). Defaults to "w".

connection

PostgreSQL database connection resource. When connection is not present, the default connection is used. The default connection is the last connection made by pg_connect() or pg_pconnect().

Návratové hodnoty

Vrací TRUE při úspěchu, FALSE při selhání.

Příklady

Příklad 1. pg_trace() example

<?php
$pgsql_conn
= pg_connect("dbname=mark host=localhost");

if (
$pgsql_conn) {
   
pg_trace('/tmp/trace.log', 'w', $pgsql_conn);
   
pg_query("SELECT 1");
   
pg_untrace($pgsql_conn);
   
// Now /tmp/trace.log will contain backend communication
} else {
   print
pg_last_error($pgsql_conn);
   exit;
}
?>