在运维和系统管理中,RockyLinux日志格式自定义是一项非常实用的技能。通过自定义日志格式,我们可以让系统日志更清晰、更易读,甚至满足特定的安全审计或监控需求。本教程将带你从零开始,使用
Rsyslog工具来实现系统日志格式修改,即使是 Linux 小白也能轻松上手。

什么是 Rsyslog?
Rsyslog 是 RockyLinux(以及大多数现代 Linux 发行版)默认使用的系统日志服务。它负责收集、处理和存储来自系统内核、服务和应用程序的日志信息。默认情况下,日志会写入
/var/log/目录下的多个文件中,如
messages、
secure、
maillog等。
但默认日志格式可能不够直观,比如缺少时间戳毫秒、主机名缩写等问题。这时,我们就需要进行 Linux日志管理 的高级配置——自定义日志格式。
步骤一:确认 Rsyslog 是否运行
首先,确保你的 RockyLinux 系统已安装并启用了 Rsyslog:
如果未运行,使用以下命令启动并设置开机自启: Rsyslog 使用“模板(Template)”来定义日志输出格式。我们将在配置文件中添加一个新模板。 编辑主配置文件: 在文件末尾添加以下自定义模板(你可以根据需求调整字段): 说明: 接下来,我们要告诉 Rsyslog 使用这个新模板来写入日志。例如,让 找到原配置中类似下面这行: 将其修改为: 注意最后的 保存配置文件后,重启 Rsyslog 服务: 然后生成一条测试日志: 查看日志文件内容: 你应该会看到类似这样的输出: 恭喜!你已经成功完成了 Rsyslog配置教程 中的关键一步。 通过本教程,你学会了如何在 RockyLinux 中进行 RockyLinux日志格式自定义,掌握了 系统日志格式修改 的核心方法,并了解了 Linux日志管理 的最佳实践。这些技能不仅能提升日志可读性,还能为后续的日志分析、安全审计打下坚实基础。 现在,你可以根据团队或项目需求,灵活设计属于自己的日志格式了!sudo systemctl status rsyslogsudo systemctl start rsyslogsudo systemctl enable rsyslog步骤二:创建自定义模板
sudo vi /etc/rsyslog.conf# 自定义日志格式模板$template CustomFormat,"%timestamp:::date-rfc3339% [%syslogseverity-text%] %hostname% %app-name%[%procid%]: %msg%\n"%timestamp:::date-rfc3339%
:使用 RFC3339 标准格式的时间戳(包含时区和毫秒) %syslogseverity-text%
:日志级别(如 info、warning、error) %hostname%
:主机名 %app-name%
和 %procid%
:产生日志的应用程序名和进程 ID %msg%
:实际日志消息步骤三:应用模板到日志文件
/var/log/messages
使用自定义格式。*.info;mail.none;authpriv.none;cron.none /var/log/messages*.info;mail.none;authpriv.none;cron.none /var/log/messages;CustomFormat;CustomFormat
,它表示使用我们刚定义的模板。步骤四:重启 Rsyslog 并验证
sudo systemctl restart rsysloglogger "这是一条测试日志"tail -n 1 /var/log/messages2024-06-15T10:23:45.123456+08:00 [info] rocky-server logger[12345]: 这是一条测试日志小贴士与注意事项
修改前建议备份原配置:sudo cp /etc/rsyslog.conf /etc/rsyslog.conf.bak
可以为不同日志文件(如 secure、maillog)分别指定不同模板 更多模板变量参考官方文档:Rsyslog Templates 若配置错误导致日志无法写入,请检查 /var/log/rsyslog.err
或使用 journalctl -u rsyslog
查看错误总结
