This documentation is for a release that is no longer maintained
See documentation for the latest supported version.1.3. Red Hat Developer Hub 中的审计日志文件轮转
登录到 Red Hat Developer Hub 中的轮转文件对于审计日志的持久性存储会很有帮助。
持久性存储可确保即使 pod 重启后,该文件也会保持不变。审计日志文件轮转会定期创建一个新文件,其中只有新数据写入到最新的文件中。
- 默认设置
默认禁用将审计日志记录到轮转文件。启用后,默认行为会更改为:
- 在午夜(本地系统时区)轮转日志。
-
日志文件格式:
redhat-developer-hub-audit-%DATE%.log. -
日志文件存储在
/var/log/redhat-developer-hub/audit中。 - 没有删除自动日志文件。
- 没有归档日志的 gzip 压缩。
- 没有文件大小限制。
审计日志写在 /var/log/redhat-developer-hub/audit 目录中。
- 日志文件名称
- 审计日志文件名采用以下格式:
redhat-developer-hub-audit-%DATE%.log
其中 %DATE% 是 auditLog.rotateFile.dateFormat 中指定的格式。您可以在配置文件轮转时自定义文件名。
- 文件轮转日期和时间
支持的
auditLog.rotateFile.frequency选项包括:-
daily: 每天在 00:00 本地时间点 -
Xm:每X分钟进行轮转(其中 X 是 0 到 509 之间的数字) -
Xh: 对每个X小时进行轮转(其中 X 是 0 到 23 之间的数字) -
测试:每 1 分钟轮转一次 -
Custom: 使用dateFormat来设置轮转频率(如果未指定频率,则默认为)
-
如果 频率 设为 Xh、Xm 或 test,则必须以包含指定时间组件的格式配置 dateFormat 设置。否则,轮转可能无法按预期工作。
例如,使用 dateFormat: 'YYYY-MM-DD-HH 用于每小时轮转,dateFormat: 'YYYY-MM-DD-HH-mm 用于分钟轮转。
分钟轮转示例:
auditLog:
rotateFile:
# If you want to rotate the file every 17 minutes
dateFormat: 'YYYY-MM-DD-HH-mm'
frequency: '17m'
auditLog:
rotateFile:
# If you want to rotate the file every 17 minutes
dateFormat: 'YYYY-MM-DD-HH-mm'
frequency: '17m'
如果频率设置为 自定义,则 dateFormat 设置在 logFileName 中配置 %DATE% 和文件轮转 频率。默认格式为 YYYY-MM-DD,表示每日轮转。支持的值基于 Moment.js 格式。
如果将 频率 设置为 custom,则在日期字符串(在指定 dateFormat 中表示)时会轮转,更改。
- 归档和删除
- 默认情况下,日志文件不会被归档或删除。
- 启用并配置审计文件轮转
- 如果您是 Developer Hub 管理员,您可以为审计日志启用文件轮转,并配置文件日志位置、名称格式、频率、日志文件大小、保留策略和归档。
审计日志文件轮转配置示例
- 1
- 将
enabled设置为true以使用审计日志文件轮转。默认情况下,它被设置为false。 - 2
- 日志文件的绝对路径。如果指定的目录不存在,则会自动创建该目录。
- 3
- 默认日志文件格式。
- 4
- 如果没有指定频率,则每天在 00:00 本地进行默认的文件轮转。
- 5
- 默认日期格式。
- 6
- 将
utc设置为true,来为dateFormat而不是本地时间使用 UTC 时间。 - 7
- 为审计日志设置最大文件大小限制。在本例中,最大大小为 100m。
- 8
- 如果设置为文件数,例如
14,那么当存在超过 14 个日志文件时,它将删除最旧的日志。如果设置为天数,如5d,则它将删除超过 5 天的日志。 - 9
- 使用
gzip归档和压缩轮转日志。默认值为false。
-
默认情况下,日志文件不会被归档或删除。如果启用了日志删除,则会在日志
要跟踪生成的日志的目录中生成 .<sha256 hash>-audit.json。目录中不包含的任何日志文件都不受到自动删除。 -
每次后端启动时都会生成一个新的
.<sha256 hash>-audit.json文件,这会导致以前的审计日志停止跟踪或删除,但当前后端仍使用的文件除外。