↑↓ 选择↵ 打开⌫ 切换范围完整搜索

PG.CENTER 连接 PostgreSQL 文档、百科与生态知识。由 Pigsty 维护。

Wiki / 配置参数

log_destination

英文手册覆盖始于 PostgreSQL 7.4. 来源历史与运行验证各自保留独立版本边界。

当前阅读 PG 18·选择有来源记录的版本

boot val
stderr
category
Reporting and Logging / Where to Log
context
sighup
documented
true
enumvals
未知
extra desc
Valid values are combinations of "stderr", "syslog", "csvlog", "jsonlog", and "eventlog", depending on the platform.
lang
en
max val
未知
metadata version
18
min val
未知
name
log_destination
short desc
Sets the destination for server log output.
source
pg-settings-source-snapshot
unit
未知
vartype
string

版本定义 PG 18

PostgreSQL支持多种记录服务器消息的方法,包括 stderr,csvlog,jsonlog和 syslog。在Windows上,eventlog也受支持。将此参数设置为以逗号分隔的所需日志目的地列表。默认情况下仅记录到 stderr。此参数只能在postgresql.conf 文件或服务器命令行中设置。

如果csvlog被包括在log_destination中,日志项会以“逗号分隔值”(CSV)格式被输出,这样可以很方便地把日志载入到程序中。详见第 19.8.4 节。要产生 CSV 格式的日志输出,必须启用logging_collector。

如果jsonlog包含在log_destination中,日志条目将以JSON格式输出,这对将日志加载到程序中很方便。有关详细信息,请参见第 19.8.5 节。必须启用logging_collector才能生成JSON格式的日志输出。

当包含stderr、csvlog或jsonlog时,文件current_logfiles会被创建,记录日志收集器当前使用的日志文件位置和相关的日志目的地。这提供了一种方便的方式来查找实例当前使用的日志。以下是该文件内容的示例:

stderr log/postgresql.log
csvlog log/postgresql.csv
jsonlog log/postgresql.json

当由于轮换而创建新的日志文件时,以及重新加载log_destination时,current_logfiles会被重新创建。当log_destination中不包含stderr、csvlog或jsonlog,或者日志收集器被禁用时,它会被移除。

注意

在大多数 Unix 系统上,你将需要修改系统的syslog守护进程的配置来使用log_destination的syslog选项。PostgreSQL可以在syslog设施LOCAL0到LOCAL7中记录(见syslog_facility),但是大部分平台上的默认syslog配置会丢弃所有这种消息。你需要在syslog守护进程的配置文件中增加类似以下的内容,使其生效:

local0.*    /var/log/postgresql

在 Windows 上,当你使用log_destination的eventlog选项时,你应该在操作系统中注册一个事件源及其库,这样 Windows 事件查看器能够清楚地显示事件日志消息。详见第 18.12 节。

比较版本

来源引用

完整定义与证据 JSON

定义来源

center · PostgreSQL 18 · english-manuals:06312c0c4bc6ca061dccd3da987d5b1f13ae10b9268f240d0263cb26723dfb94

正文语言: zh-Hans · 2026-09-11@29c86d9