审计开关
audit_enabled
参数说明:控制传统审计的开启和关闭。
参数类型:布尔型
参数单位:无
取值范围:
- on:表示启动审计功能。
- off:表示关闭审计功能。
默认值:on
设置方式:该参数属于SIGHUP类型参数,请参见表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:开启审计功能会对数据库性能有一定影响,影响程度取决于记录审计的频率。若设置为on,请根据实际业务和追溯需要设置其他审计开关项;若设置为off,则无法通过审计日志追溯历史操作。为确保系统稳定性,不应在高频执行审计操作期间关闭审计功能。
audit_directory
参数说明:审计文件的存储目录。可以是相对于数据目录data的相对路径,也可以是绝对路径,且仅sysadmin用户可以访问。
参数类型:字符串
参数单位:无
取值范围:合法目标路径。
默认值:“pg_audit”。如果使用om工具部署集群,则审计日志路径为“$GAUSSLOG/pg_audit/实例名称”。
设置方式:该参数属于POSTMASTER类型参数,请参见表1中对应设置方法进行设置。
设置建议:推荐使用默认值。
设置不当的风险与影响:若设置的值为非法路径,或路径空间已满,会导致审计功能无法正常使用;不同的CN或DN实例需要设置不同的审计文件存储目录,否则会导致审计日志异常。
- 合法路径:用户对此路径有读写权限。
- 非法路径:用户对此路径无读写权限。
audit_data_format
参数说明:审计日志文件的格式。当前仅支持二进制或文本格式,且仅sysadmin用户可以访问。
参数类型:字符串
参数单位:无
取值范围:
- binary:二进制格式。
- text:文本格式。
默认值:"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。取值如果要加上单位,必须为“min”、“h”、“d”。
设置建议:推荐使用默认值。
设置不当的风险与影响:设置过小会导致审计目录下文件过多;设置过大会导致单个审计文件过大。请勿随意调整此参数,否则可能会导致audit_resource_policy无法生效。如需控制审计日志的存储空间和时间,可通过audit_resource_policy、audit_space_limit和audit_file_remain_time等参数实现。
audit_rotation_size
参数说明:指定审计日志文件的最大容量(实际文件大小可能会超过设置上限1~10MB)。当审计日志消息的总量超过此参数值时,服务器将生成一个新的审计日志文件。
参数类型:整型
参数单位: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时生效。
参数类型:整型
参数单位:d(天)
取值范围: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时生效。设置过小会导致保留的审计日志量过少,审计追溯有效时长降低;设置过大会导致审计目录下保存过多审计日志,影响审计查询/删除的性能并占用磁盘空间。
- 此参数的生效范围是pg_audit目录下的单个进程实例文件夹。即默认情况下,每一个CN、DN目录下的审计文件占用的磁盘空间总量为1GB。
- 多审计线程场景下,审计文件占用的磁盘空间的最小值为audit_thread_num与audit_rotation_size的乘积,请保确audit_space_limit的值大于audit_thread_num与audit_rotation_size的乘积。
audit_file_remain_threshold
参数说明:审计目录下审计文件的最大个数。
参数类型:整型
参数单位:个
取值范围:100 ~ 1048576
默认值:1048576
设置方式:该参数属于SIGHUP类型参数,请参见表1中的对应设置方法进行设置。
设置建议:推荐使用默认值,不建议随意调整此参数。如需控制审计日志的存储空间和保留时间,请通过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资源越多。