(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.
filename
La ruta completa y el nombre del fichero en el que se registrará el seguimiento. Como fopen().
mode
El modo de acceso opcional, como fopen().
connection
An PgSql\Connection instance.
When connection
is null
, the default connection is used.
The default connection is the last connection made by pg_connect()
or pg_pconnect().
As of PHP 8.1.0, using the default connection is deprecated.
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_mode ha sido añadido.
|
8.1.0 |
The connection parameter expects an PgSql\Connection
instance now; previously, a recurso was expected.
|
8.0.0 |
connection ahora 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;
}
?>