这些参数控制服务器范围的统计数据收集特性。当统计收集被启用时,被产生的数据可以通过pg_stat
和pg_statio
系统视图族访问。详见第 27 章。
track_activities
(boolean
)
启用对每个会话的当前执行命令的信息收集,还有命令开始执行的时间。这个参数默认为打开。注意即使被启用,这些信息也不是对所有用户可见,只有超级用户和拥有报告信息的会话的用户可见,因此它不会表现为一个安全风险。只有超级用户可以更改这个设置。
track_activity_query_size
(integer
)
为每个活动会话指定存储当前执行命令的文本所保留的内存量,它们被用于pg_stat_activity
.query
域。
如果指定值时没有单位,则以字节为单位。默认值是 1024字节。这个参数只能在服务器启动时被设置。
track_counts
(boolean
)
启用在数据库活动上的统计收集。这个参数默认为打开,因为自动清理守护进程需要被收集的信息。只有超级用户可以更改这个设置。
track_io_timing
(boolean
)
启用对系统 I/O 调用的计时。这个参数默认为关闭,因为它将重复地向操作系统查询当前时间,这会在某些平台上导致显著的负荷。
你可以使用pg_test_timing工具来度量你的系统中计时的开销。
I/O 计时信息被显示在 pg_stat_database
中,当BUFFERS
选项被使用时的EXPLAIN输出中以及pg_stat_statements中。只有超级用户可以更改这个设置。
track_functions
(enum
)
启用跟踪函数调用计数和用时。指定pl
只跟踪过程语言函数,指定all
还会跟踪 SQL 和 C 语言函数。默认值是none
,它禁用函数统计跟踪。只有超级用户可以更改这个设置。
简单到足以被“内联”到调用查询中的 SQL 语言函数不会被跟踪, 而不管这个设置。
stats_temp_directory
(string
)
设置存储临时统计数据的目录。这可以是一个相对于数据目录的路径或一个绝对路径。默认值是pg_stat_tmp
。在一个基于 RAM 的文件系统上指明这个参数将降低物理 I/O 需求,并且提高性能。这个参数只能在postgresql.conf
文件中或在服务器命令行上设置。