首页 > 代码库 > Rsyslog分别归档Local0的err、info日志
Rsyslog分别归档Local0的err、info日志
有个新需求:postgresql的日志在rsyslog服务器中的日志要分开打,根据priority,即:
error和warn的日志要归档在一个文件中;
info和其余级别的日志归档在一个文件中,并且每小时自动切割日志;
解决办法:
1. 在/etc/rsyslog.d目录下新建配置文件postgresql.conf
vi /etc/rsyslog.d/postgresql.conf
#定义日志存储路径template
$template postgresql_warn,"/data/syslog/%fromhost-ip%/error.log" $template postgresql_info,"/data/syslog/%fromhost-ip%/postgresql.%$year%-%$month%-%$day%-%$hour%"
#定义日志存储格式,只存储msg信息
#Define log format to Postgresql $template pgsql_format, "%msg%\n"
#通过if判断式定义日志收集规则,并应用日志format:
#Postgresql log if ($syslogfacility-text ==‘local0‘ and $syslogpriority-text == ‘warning‘ or $syslogpriority-text == ‘err‘) and $fromhost-ip == ‘10.1.1.11‘ then -?postgre sql_warn;pgsql_format if ($syslogfacility-text ==‘local0‘ and $syslogpriority-text != ‘warning‘ and $syslogpriority-text != ‘err‘) and $fromhost-ip == ‘10.1.1.11‘ then -?postgr esql_info;pgsql_format
2. 重启日志服务
/etc/init.d/rsyslog restart
3.进入指定目录查看收集到的日志
本文出自 “DBQ blog” 博客,谢绝转载!
Rsyslog分别归档Local0的err、info日志
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。