pg_trace

(PHP 4 >= 4.0.1, PHP 5)

pg_trace — Включает трассировку подключения PostgreSQL


Описание

bool pg_trace ( string $pathname [, string $mode = "w" [, resource $connection ]] )

pg_trace() включает трассировку соединения с PostgreSQL сервером во внешний файл. Чтобы понимать содержимое таких файлов, необходимо хорошо разбираться во внутреннем устройстве клиент-серверного взаимодействия.

Для тех, кто не обладает подобными навыками, трассировка все же может оказаться полезной для поиска ошибок при отправке запросов на сервер. Например, можно выполнить команду grep '^To backend' trace.log и посмотреть, какие запросы реально отправлены на сервер. Дополнительную информацию можно почерпнуть из » документации PostgreSQL.


Список параметров

pathname -

Полный путь и имя файла для записи журнала трассировки. Аналогично fopen().

pathname -

Необязательный аргумент. Режим доступа к файлу. Аналогично fopen().

connection -

Ресурс подключения к базе данных PostgreSQL. Если параметр connection не задан, будет использовано подключение по умолчанию - последнее соединение, открытое функцией pg_connect() или pg_pconnect().


Возвращаемые значения

Возвращает TRUE в случае успешного завершения или FALSE в случае возникновения ошибки.


Примеры

Пример #1 Пример использования pg_trace()
$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);
   // Теперь /tmp/trace.log будет хранить информацию о взаимодействии с сервером
} else {
   print pg_last_error($pgsql_conn);
   exit;
}


Смотрите также

  • fopen() - Открывает файл или URL
  • pg_untrace() - Отключает трассировку соединения с PostgreSQL


Описание на ru2.php.net
Описание на php.ru