postgres(HGDB)开启告警日志记录功能
来源:互联网 发布:数控机床的数据参数 编辑:程序博客网 时间:2024/06/14 23:30
日志审计
审计是值记录用户的登陆退出以及登陆后在数据库里的行为操作,可以根据安全等级不一样设置不一样级别的审计,
此处涉及的参数文件有:
logging_collector --是否开启日志收集开关,默认off,开启要重启DB
log_destination --日志记录类型,默认是stderr,只记录错误输出
log_directory --日志路径,默认是$PGDATA/pg_log
log_filename --日志名称,默认是postgresql-%Y-%m-%d_%H%M%S.log
log_connections --用户session登陆时是否写入日志,默认off
log_disconnections --用户session退出时是否写入日志,默认off
log_rotation_age --保留单个文件的最大时长,默认是1d,也有1h,1min,1s,个人觉得不实用;
log_rotation_age 这个不是限制文件的保留期限 是限制文件多长时间生成一个
log_rotation_size --保留单个文件的最大尺寸,默认是10MB
配置值:
logging_collector = on
log_destination = 'csvlog'
log_directory = 'pg_log'
log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log'
log_connections = on
log_disconnections = on
log_rotation_age = 1d
log_rotation_size = 20MB
$ pg_ctl stop
$ pg_ctl start
[postgres9.6@db data]$ pwd
/home/postgres9.6/data
[postgres9.6@db data]$ ll pg_log
total 4
-rw------- 1 postgres9.6 postgres 303 Feb 9 10:21 postgresql-2017-02-09_101828.log
[postgres9.6@db data]$
[postgres9.6@db data]$ cd pg_log
[postgres9.6@db pg_log]$ cat postgresql-2017-02-09_101828.log
LOG: database system was shut down at 2017-02-09 10:18:25 CST
LOG: MultiXact member wraparound protections are now enabled
LOG: database system is ready to accept connections
LOG: autovacuum launcher started
ERROR: unrecognized configuration parameter "pg_statement"
STATEMENT: show pg_statement;
记录用户登陆数据库后的各种操作,postgres日志里分成了3类,通过参数pg_statement来控制,默认的pg_statement参数值是none,即不记录,可以设置ddl(记录create,drop和alter)、mod(记录ddl+insert,delete,update和truncate)和all(mod+select)。
一般的OLTP系统审计级别设置为ddl就够了,因为记录输出各种SQL对性能的影响还是蛮大的,安全级别高一点的也可以设置mod模式,有条件也可以不在数据库层面做,而是购买设备放在网络层监控解析。
log_truncate_on_totation=off
log_rotation_age = 1d
log_rotation_size = 0
每当日志写满10M大小时,则切换一个日志:
log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log'
log_truncate_on_totation=off
log_rotation_age = 0
log_rotation_size = 10M
只保留7天的日志,进行循环覆盖:
log_filename = 'postgresql-%a.log'
log_truncate_on_totation=on
log_rotation_age = 1d
log_rotation_size = 0
审计是值记录用户的登陆退出以及登陆后在数据库里的行为操作,可以根据安全等级不一样设置不一样级别的审计,
此处涉及的参数文件有:
logging_collector --是否开启日志收集开关,默认off,开启要重启DB
log_destination --日志记录类型,默认是stderr,只记录错误输出
log_directory --日志路径,默认是$PGDATA/pg_log
log_filename --日志名称,默认是postgresql-%Y-%m-%d_%H%M%S.log
log_connections --用户session登陆时是否写入日志,默认off
log_disconnections --用户session退出时是否写入日志,默认off
log_rotation_age --保留单个文件的最大时长,默认是1d,也有1h,1min,1s,个人觉得不实用;
log_rotation_age 这个不是限制文件的保留期限 是限制文件多长时间生成一个
log_rotation_size --保留单个文件的最大尺寸,默认是10MB
配置值:
logging_collector = on
log_destination = 'csvlog'
log_directory = 'pg_log'
log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log'
log_connections = on
log_disconnections = on
log_rotation_age = 1d
log_rotation_size = 20MB
$ pg_ctl stop
$ pg_ctl start
[postgres9.6@db data]$ pwd
/home/postgres9.6/data
[postgres9.6@db data]$ ll pg_log
total 4
-rw------- 1 postgres9.6 postgres 303 Feb 9 10:21 postgresql-2017-02-09_101828.log
[postgres9.6@db data]$
[postgres9.6@db data]$ cd pg_log
[postgres9.6@db pg_log]$ cat postgresql-2017-02-09_101828.log
LOG: database system was shut down at 2017-02-09 10:18:25 CST
LOG: MultiXact member wraparound protections are now enabled
LOG: database system is ready to accept connections
LOG: autovacuum launcher started
ERROR: unrecognized configuration parameter "pg_statement"
STATEMENT: show pg_statement;
记录用户登陆数据库后的各种操作,postgres日志里分成了3类,通过参数pg_statement来控制,默认的pg_statement参数值是none,即不记录,可以设置ddl(记录create,drop和alter)、mod(记录ddl+insert,delete,update和truncate)和all(mod+select)。
一般的OLTP系统审计级别设置为ddl就够了,因为记录输出各种SQL对性能的影响还是蛮大的,安全级别高一点的也可以设置mod模式,有条件也可以不在数据库层面做,而是购买设备放在网络层监控解析。
每天生成一个新的日志文件:
log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log'log_truncate_on_totation=off
log_rotation_age = 1d
log_rotation_size = 0
每当日志写满10M大小时,则切换一个日志:
log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log'
log_truncate_on_totation=off
log_rotation_age = 0
log_rotation_size = 10M
只保留7天的日志,进行循环覆盖:
log_filename = 'postgresql-%a.log'
log_truncate_on_totation=on
log_rotation_age = 1d
log_rotation_size = 0
阅读全文
0 0
- postgres(HGDB)开启告警日志记录功能
- 如何开启Tomcat的日志记录功能
- 更新日志 - BugHD 新增邮件告警功能
- Mysql中开启慢SQL日志记录功能
- Postgres设置pg_log日志记录内容
- Postgres日志记录用户登录退出信息
- mysql开启日志功能
- mysql开启日志功能
- mysql开启日志功能
- PostgreSQL告警日志中不记录select的设置方法
- win7开启MySQL日志记录
- MySQL 开启二进制日志记录
- 开启SVN日志修改功能
- ORACLE 开启归档日志功能
- Smobiler如何开启日志功能
- pure-ftpd开启日志功能
- PostgreSQL(HGDB)仅保留最近一周日志记录的设置方式
- AOP实例(1)日志记录功能
- pandas学习笔记4—factorize()
- 17101101_CentOS7进程管理systemd详解
- 【Machine Learning in Action】Chap1|Classification|kNN
- java提高篇-----集合大家族
- vue通过滚动行为实现从列表到详情,返回列表原位置
- postgres(HGDB)开启告警日志记录功能
- Hibernate框架-inverse属性
- 统计字符数
- CSS基本语法
- 新增文件测试的测试点
- HTTP 400 错误
- html5_AngularJs访问网络数据ajax
- HTML学习之块级元素和行内元素的特征和区别(一)
- CSS实现三列自适应的两种方法