我想只记录修改表(INSERT,DELETE,UPDATE)的查询,同时忽略所有SELECT及其等价物。
但是,在文档中,我的选项是在postgresql.conf文件的log_statement行中记录ddl,ddl + mod或all。
有没有办法通过更改配置文件的设置来记录操作数据的所有查询的文件,还是必须使用一些外部脚本或登录表?
我的postgresql.conf上的当前设置仍然记录SELECT查询,如下所示:
log_destination = 'syslog, csvlog'
logging_collector = on
log_min_duration_statement = 0
log_statement = mod
答案 0 :(得分:3)
作为a_horse_with_no_name和Craig指出,log_statement = mod
不应该记录选择语句。
我的问题是log_min_duration_statement = 0
,它是一个AND,所以说(记录这个和那个)。我已经对log_min_duration进行了评论,现在它只记录了我实际需要的内容。