pg_current_logfile()

一个用于显示当前正在使用的日志文件位置的系统函数

pg_current_logfile() 是一个系统函数,它将返回当前正在使用的日志文件路径。

pg_current_logfile()PostgreSQL 10 中添加。

用法

pg_current_logfile ( [ text ] ) → text

pg_current_logfile() 在没有参数的情况下调用时,将按照以下优先级顺序返回其中一个:

  • 当前 stderr 日志输出的目标日志文件路径
  • 当前 csvlog 日志输出的目标日志文件路径
  • NULL

要返回两种日志类型之一的日志文件路径,请提供 'stderr''csvlog' 作为函数参数值。请参见下面的示例。

pg_current_logfile() 只能由超级用户或被授予函数执行权限的用户执行,例如:

GRANT EXECUTE ON FUNCTION pg_catalog.pg_current_logfile() TO someuser
GRANT EXECUTE ON FUNCTION pg_catalog.pg_current_logfile(text) TO someuser

实现

pg_current_logfile() 是一个辅助函数,它报告数据目录顶层 current_logfiles 文件的内容。

变更历史

示例

pg_current_logfile() 的基本执行示例

postgres=# SHOW log_destination;
 log_destination 
-----------------
 stderr,csvlog
(1 row)

postgres=# SELECT * FROM pg_current_logfile();
      pg_current_logfile
------------------------------
 /var/log/pgsql/postgresql.log
(1 row)

postgres=# SELECT * FROM pg_current_logfile('csvlog');
      pg_current_logfile
------------------------------
 /var/log/pgsql/postgresql.csv
(1 row)

使用无效参数执行 pg_current_logfile()

postgres=# SELECT * FROM pg_current_logfile('foo');
ERROR:  log format "foo" is not supported
HINT:  The supported log formats are "stderr" and "csvlog".

分类

日志记录系统函数

另请参阅

log_directorylog_destinationpg_rotate_logfile()pg_ls_logdir()

反馈

提交您对 "pg_current_logfile()" 的任何评论、建议或更正 在此