审计开关
audit_enabled
参数说明:控制审计线程的开启和关闭。审计线程开启后,将从管道读取后台线程写入的审计信息,并写入审计文件。
参数类型:布尔型
参数单位:无
取值范围:
- on:表示启动审计功能。
- off:表示关闭审计功能。
默认值:on
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:开启审计功能会对数据库性能有一定影响,影响程度取决于记录审计的频率,若设置为on,请根据实际业务和追溯需要设置其他审计开关项;设置为off,不能通过审计日志追溯历史操作。
audit_directory
参数说明:审计文件的存储目录。可以是相对于数据目录data的相对路径,也可以是绝对路径,仅sysadmin用户可以访问。
参数类型:字符串
参数单位:无
取值范围:合法目标路径。
默认值:“pg_audit”。如果使用om工具部署数据库,则审计日志路径为“$GAUSSLOG/pg_audit/实例名称”。
设置方式:该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:若设置的值为非法路径,或设置的路径空间已满,会导致审计功能无法正常使用;不同的DN实例需要设置不同的审计文件存储目录,否则会导致审计日志异常。
- 合法路径:用户对此路径有读写权限。
- 非法路径:用户对此路径无读写权限。
audit_data_format
参数说明:审计日志文件的格式。当前仅支持二进制格式,仅sysadmin用户可以访问。
参数类型:字符串
参数单位:无
取值范围:字符串
默认值:"binary"
设置方式:该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:当前仅支持二进制格式,设置为其他值无法生效。
audit_rotation_interval
参数说明:指定创建一个新审计日志文件的时间间隔。当现在的时间减去上次创建一个审计日志的时间超过了此参数值时,服务器将生成一个新的审计日志文件。
参数类型:整型
参数单位:min
取值范围:1 ~ 35791394(INT_MAX/60)
默认值:1d(1440min)
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。例如:不带单位取值1440,表示audit_rotation_interval参数的值为1440min;带单位取值2d,表示audit_rotation_interval参数的值为2880min(2d)。取值如果要加上单位,必须为“min”、“h”、“d”。
设置建议:推荐使用默认值。
设置不当的风险与影响:设置过小会导致审计目录下文件过多;设置过大会导致单个审计文件过大。请不要随意调整此参数,否则可能会导致audit_resource_policy无法生效,如果需要控制审计日志的存储空间和时间,请使用audit_resource_policy、audit_space_limit和audit_file_remain_time等参数进行控制。
audit_rotation_size
参数说明:指定审计日志文件的最大容量。当审计日志消息的总量超过此参数值时,服务器将生成一个新的审计日志文件。
参数类型:整型
参数单位:kB
取值范围:1024 ~ 1048576。
默认值:10MB(10240kB)
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。例如,不带单位取值131072,表示audit_rotation_size为131072kB;带单位取值128MB,表示audit_rotation_size为128MB。取值如果要加上单位,必须为“kB”、“MB”、“GB”。
设置建议:推荐使用默认值。
设置不当的风险与影响:设置过小会导致审计目录下文件过多;设置过大会导致单个审计文件过大。请不要随意调整此参数,否则可能会导致audit_resource_policy无法生效,如果需要控制审计日志的存储空间和时间,请使用audit_resource_policy、audit_space_limit和audit_file_remain_time参数进行控制。审计日志文件中记录的单条日志占用空间大小超过此参数值时会被作为无效日志文件。
audit_resource_policy
参数说明:控制审计日志的保存策略,以空间还是时间限制为优先策略。
参数类型:布尔型
参数单位:无
取值范围:
- on:表示采用空间优先策略,最多存储audit_space_limit大小的日志。
- off:表示采用时间优先策略,最少存储audit_file_remain_time长度时间的日志。
默认值:on
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。
设置建议:选择空间优先策略时,不要随意调整时间策略相关的GUC参数:audit_rotation_interval、audit_file_remain_time;选择时间优先策略时,不要随意调整空间策略相关的GUC参数:audit_rotation_size、audit_space_limit、audit_file_remain_threshold。
设置不当的风险与影响:此参数需配合对应策略相关的其他GUC参数共同使用,设置不当会导致审计日志的保存策略不符合预期。
audit_file_remain_time
参数说明:表示需记录审计日志的最短时间要求,该参数在audit_resource_policy为off时生效。
参数类型:整型
参数单位:天(day)
取值范围:0 ~ 730,0表示无时间限制。
默认值:90
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。取值不能带单位。
设置建议:根据实际需要保留审计日志的时间设置。audit_resource_policy为on时请不要随意调整此参数。
设置不当的风险与影响:该参数在audit_resource_policy为off时生效。设置过小会导致保留的审计日志量过少,审计追溯有效时长降低;设置过大会导致审计目录下保存过多审计日志,影响审计查询/删除的性能、占用磁盘空间。
audit_space_limit
参数说明:审计文件占用的磁盘空间总量。
参数类型:整型
参数单位:kB
取值范围:1024 ~ 1073741824(1024GB)
默认值:1GB(1048576kB)
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。例如,不带单位取值131072,表示audit_space_limit为131072kB;带单位取值128MB,表示audit_space_limit为128MB。取值如果要加上单位,必须为“kB”、“MB”、“GB”。
设置建议:建议根据实例实际可用空间及需要保存的审计日志量来设置。
设置不当的风险与影响:该参数在audit_resource_policy为on时生效。设置过小会导致保留的审计日志量过少,审计追溯有效时长降低;设置过大会导致审计目录下保存过多审计日志,影响审计查询/删除的性能、占用磁盘空间。
多审计线程场景下,审计文件占用的磁盘空间最小值是audit_thread_num与audit_rotation_size的乘积,请保证audit_space_limit的值大于audit_thread_num与audit_rotation_size的乘积。
audit_file_remain_threshold
参数说明:审计目录下审计文件个数的最大值。
参数类型:整型
参数单位:个
取值范围:100 ~ 1048576
默认值:1048576
设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。
设置建议:推荐使用默认值。详情请参考以下须知。
1048576(196核CPU/1536G内存,128核CPU/1024G内存,104核CPU/1024G内存,96核CPU/1024G内存,96核CPU/768G内存,80核CPU/640G内存,64核CPU/512G内存,60核CPU/480G内存,32核CPU/256G内存,16核CPU/128G内存,8核CPU/64G内存,4核CPU/32G内存);1024(4核CPU/16G内存),不要随意调整此参数,如果需要控制审计日志的存储空间和时间,请使用audit_resource_policy、audit_space_limit和audit_file_remain_time参数进行控制。
设置不当的风险与影响:设置不当可能会导致audit_resource_policy无法生效。
audit_thread_num
参数说明:该参数表示用于审计的线程个数。
参数类型:整型
参数单位:个(表示线程数量)
取值范围:1 ~ 48
默认值:1
设置方式:该参数属于POSTMASTER类型参数,请参见表1中对应设置方法进行设置。
设置建议:当audit_dml_state开关打开且在高性能场景下,建议增大此参数保证审计消息可以被及时处理和记录;其他情况建议设置为默认值。
设置不当的风险与影响:线程数量设置越多,对系统性能的影响越大,占用的系统CPU和I/O越多。