(PHP 4 >= 4.0.1, PHP 5, PHP 7, PHP 8)
pg_trace — Activa el seguimiento de una conexión PostgreSQL
$filename,$mode = "w",$connection = null,$trace_mode = 0pg_trace() activa el seguimiento de las comunicaciones entre PHP y el servidor PostgreSQL. Este historial se registrará en un fichero. Para comprender estas líneas, es necesario estar familiarizado con el protocolo de comunicación interno de PostgreSQL.
Para quienes no lo estén, pueden ser útiles para seguir las consultas y los errores: con el comando grep '^To backend' trace.log, se podrán ver las consultas realmente enviadas al servidor PostgreSQL. Para más información, consulte la » Documentación PostgreSQL.
filenameLa ruta completa y el nombre del fichero en el que se registrará el seguimiento. Como fopen().
modeEl modo de acceso opcional, como fopen().
connection
 Una instancia PgSql\Connection.
 Cuando connection es null, se usa la conexión por defecto.
 La conexión por defecto es la última conexión hecha por
 pg_connect() o pg_pconnect()
 
Desde PHP 8.1.0, usar la conexión por defecto está obsoleto.
trace_mode
       Un modo de seguimiento opcional con las constantes siguientes:
       PGSQL_TRACE_SUPPRESS_TIMESTAMPS y
       PGSQL_TRACE_REGRESS_MODE
      
| Versión | Descripción | 
|---|---|
| 8.3.0 | trace_modeha sido añadido. | 
| 8.1.0 | El parámetro connectionahora espera una instancia de
  PgSql\Connection ; anteriormente, se esperaba un resource. | 
| 8.0.0 | connectionahora es nullable. | 
Ejemplo #1 Ejemplo con pg_trace()
<?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);
   // Ahora /tmp/trace.log contendrá el seguimiento de las comunicaciones
} else {
   print pg_last_error($pgsql_conn);
   exit;
}
?>
