pg_set_error_verbosity
pg_transaction_status
PostgreSQL Functions
PHP Manual

# pg_trace

(PHP 4 >= 4.0.1, PHP 5)

pg_trace — Enable tracing a PostgreSQL connection

### Descripción

bool pg_trace ( string `$pathname` [, string `$mode`= "w" [, 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.

### Lista de parámetros

`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().

### Valores retornados

Devuelve `TRUE` si todo se llevó a cabo correctamente, `FALSE` en caso de fallo.

### Ejemplos

Example #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;
}
?>`

### Ver también

- fopen() - Abre un archivo o URL
- pg_untrace() - Disable tracing of a PostgreSQL connection

pg_set_error_verbosity
pg_transaction_status
PostgreSQL Functions
PHP Manual