值得注意的是,您可以在连接字符串中设置 application_name,请考虑这个简单的示例
<?php
$appName = $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
$connStr = "host=localhost port=5432 dbname=postgres user=postgres options='--application_name=$appName'";
// 简单检查
$conn = pg_connect($connStr);
$result = pg_query($conn, "select * from pg_stat_activity");
var_dump(pg_fetch_all($result));
?>
通过在 CLI 或 CGI 上进行此操作,您可以在 pgAdmin 中查看正在运行的脚本或正在数据库上运行的请求。您可以扩展 postgres 的配置以跟踪慢速查询并将应用程序名称打印到日志。对我来说,这对于找出应该优化什么以及在哪里非常有用。