PosgreSQL日志配置
【摘要】 PostgreSQL 日志支持的输出格式有 stderr(默认), csvlog , syslog 一般的错误跟踪,只需在配置文件 【postgresql.conf】简单设置几个参数,当然还有错误级别等要设置。logging_collector = onlog_destination = 'stderr'log_directory = 'log'log_filename = 'postgre...
PostgreSQL 日志支持的输出格式有 stderr(默认), csvlog , syslog
一般的错误跟踪,只需在配置文件 【postgresql.conf】简单设置几个参数,当然还有错误级别等要设置。
logging_collector = on
log_destination = 'stderr'
log_directory = 'log'
log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log'
SELECT name,setting,vartype,boot_val,reset_val FROM pg_settings
where name in('logging_collector','log_destination','log_directory','log_filename');
默认的跟踪日志记录在 pgdate/log 中,如 /usr/local/pgsql/data/log 。
其他几个重要参数说明:
log_rotation_age = 1440 #minute,多长时间创建新的文件记录日志。0 表示禁扩展。
log_rotation_size = 10240 #kb,文件多大后创建新的文件记录日志。0 表示禁扩展。
log_truncate_on_rotation = on #可重用同名日志文件
当需要跟踪SQL语句或者慢语句,得需要设置以下参数:
log_statement = all #需设置跟踪所有语句,否则只能跟踪出错信息
log_min_duration_statement = 5000 #milliseconds,记录执行5秒及以上的语句
log_statement:
设置跟踪的语句类型,有4种类型:none(默认), ddl, mod, all。跟踪所有语句时可设置为 "all"。
log_min_duration_statement:
跟踪慢查询语句,单位为毫秒。如设置 5000,表示日志将记录执行5秒以上的SQL语句。
当 log_statement=all 和 log_min_duration_statement 同时设置时,将跟踪所有语句,忽略log_min_duration_statement 设置。所以需按情况设置其中一个或两个值。
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
作者其他文章
评论(0)