18.8. 运行时统计

18.8.1. 查询和索引统计收集器

下面的参数控制服务器范围的统计搜集特性。如果启用了统计搜集,那么 生成的数据可以通过pg_statpg_statio系统视图家族访问。参见 章Chapter 27获取更多信息。

track_activities(boolean)

统计每个会话执行的命令及其开始执行的时间。这个选项缺省是关闭的。 请注意即使把它打开,这个信息也不是所有用户都可见的,只有超级用户 和会话的所有者才能看到;因此它不应该是个安全漏洞。只有超级用户 可以改变这个设置。

track_activity_query_size(integer)

声明保留的字节数,以跟踪每个活动会话的当前执行命令,对 pg_stat_activity.current_query段。 缺省值是1024。这个参数只能在服务器启动时设置。

track_counts(boolean)

在活动数据库上启用统计收集。该参数缺省是启用, 因为autovacuum守护进程需要这些收集信息。只有超级用户可以设置该参数。

track_functions(enum)

启用跟踪函数调用统计和使用时间。pl表示 只跟踪过程语言函数,all表示也可以跟踪SQL和C语言函数。 缺省值是none,表示禁用函数统计跟踪。只有超级用户 可以修改这个设置。

Note: 简单到足以"inlined"到调用查询中的SQL语言函数不会被跟踪, 忽略该设置。

update_process_title(boolean)

每次服务器接收一条心SQL命令时,启用更新进程标题。 进程标题可以通过ps命令查看, 或者Windows下的Process Explorer查看。只有超级用户可以改变这个设置。

stats_temp_directory(string)

设置存储临时统计数据的路径,可以是一个data的相对路径,也可以是一个绝对路径。 缺省值是pg_stat_tmp。在RAM文件系统上指明该路径,可以 降低物理I/O要求,并且提高性能。这个参数只能在postgresql.conf文件 或通过服务器命令来设置。

18.8.2. Statistics Monitoring

log_statement_stats(boolean)
log_parser_stats(boolean)
log_planner_stats(boolean)
log_executor_stats(boolean)

对每条查询,向服务器日志里输出相应模块的性能统计。这是原始的剖析 工具。类似于Unixgetrusage()系统设施。 log_statement_stats报告总的语言统计, 而其它的报告针对 每个模块的统计。log_statement_stats不能和 其它任何针对每个模块统计的选项一起打开。所有这些选项都是缺省关闭的。 只有超级用户才能修改这些设置。