centos syslog日志格式
CentOS syslog(rsyslog)日志格式说明与自定义指南
一、默认日志格式解析
CentOS系统中,syslog功能由rsyslog服务提供,其默认日志格式为传统syslog格式(RSYSLOG_TraditionalFileFormat),主要包含以下关键字段:
- 时间戳:日志生成的具体时间(如
Oct 12 15:30:45); - 主机名:生成日志的计算机的名称(如
myhost); - 设备名/程序名:生成日志的设备或服务名称(如
kernel、sshd); - 进程信息:进程ID及进程名(如
[1234]、kernel); - 优先级/严重性:日志的重要性和紧急程度(用数字表示,如6代表“信息”);
- 模块名:生成日志的模块或子系统(如
EXT4-fs (sda1)); - 消息内容:实际的日志信息(如
mounted filesystem with ordered data mode)。
典型默认日志示例:
Oct 12 15:30:45 myhost kernel: [1234.567890] EXT4-fs (sda1): mounted filesystem with ordered data mode. Opts: (null)。
二、自定义日志格式步骤
若需调整日志格式(如增加/减少字段、修改字段顺序),可通过修改rsyslog配置文件实现,具体步骤如下:
1. 打开配置文件
rsyslog的主配置文件为/etc/rsyslog.conf,自定义配置建议存放在/etc/rsyslog.d/目录下(避免系统更新时被覆盖)。使用文本编辑器(如vim、nano)打开文件:
sudo vim /etc/rsyslog.conf 或 sudo vim /etc/rsyslog.d/50-custom.conf。
2. 定义自定义模板
通过$template指令定义新的日志格式,模板名称可自定义(如CustomFormat),格式字符串由占位符组成(区分大小写)。常见占位符包括:
%timegenerated%:日志生成时间(完整时间戳);%hostname%:主机名;%syslogtag%:系统标签(程序名+进程ID,如sshd[1234]);%app-name%:应用程序名(如sshd);%procid%:进程ID;%msgid%:消息ID;%msg%:原始日志消息内容;%$!:结构化数据(可选)。
示例1:基础格式(包含时间、主机名、程序名、消息)
$template CustomFormat, "%timegenerated% %hostname% %app-name%: %msg%\n"。
示例2:保留传统格式的关键字段(时间、主机名、设备名、消息)
$template CustomFormat, "%timegenerated% %hostname% %syslogtag% %msg:::sp-if-no-1st-sp%%msg:::drop-last-lf%\n"。
3. 应用自定义模板
修改或添加日志记录规则,将自定义模板应用到指定日志类型。规则格式为:
<
过滤条件>
<
动作>
,其中<
动作>
需指定模板(使用template=参数)。
示例1:将所有日志(*.*)写入/var/log/custom.log并使用CustomFormat
*.* action(type="omfile" file="/var/log/custom.log" template="CustomFormat")。
示例2:仅将内核日志(kern.*)应用自定义格式
kern.* action(type="omfile" file="/var/log/kern_custom.log" template="CustomFormat")。
4. 重启rsyslog服务
修改配置后,需重启rsyslog服务使更改生效:
sudo systemctl restart rsyslog。
三、注意事项
- 配置文件优先级:
/etc/rsyslog.d/目录下的配置文件优先级高于/etc/rsyslog.conf,建议将自定义配置放在该目录下; - 占位符说明:
%msg:::sp-if-no-1st-sp%用于去除消息前的空格,%msg:::drop-last-lf%用于删除消息末尾的换行符(避免日志格式混乱); - 模板复用:可定义多个模板(如
CustomFormat1、CustomFormat2),分别应用于不同类型的日志; - 日志轮转:自定义日志文件需配置
logrotate(如/etc/logrotate.d/syslog),避免日志文件过大。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: centos syslog日志格式
本文地址: https://pptw.com/jishu/736475.html
