rsyslog server和loganalyzer

    日志记录了系统运行中的相关信息,分析日志对我们的系统排错、调优等至关重要,所以本文试浅析rsyslog server和loganalyzer的图形化展示日志。


rsyslog概述

对Linux而言,应用程序和内核都有可能需要记录日志

syslogd:为应用程序记录日志

klogd:为内核记录日志

 

上述两个守护进程由程序包提供

CentOS 5之前syslog -->CentOS 6之后 rsyslog


每个应用程序都可自行记录日志,内核也可记录日志

并非所有应用程序的日志都由rsyslog来记录,例如httpd等日志信息量非常大且十分重要,其日志就由应用程序自己记录

各自记录日志的格式、排序方法各不相同,所以很难进行分析,且对于日志信息量不大的程序来说,单独开发日志记录系统意义不大,此时即可把日志记录交由rsyslog完成


核心概念

 

facility:设施

即rsyslog内置的日志管理收集工具

rsyslog从功能或程序上对日志进行分类,并由专门的工具(即facility)负责记录相应的日志信息

 

auth(认证),authpriv(认证授权),cron(定期任务计划),daemon(守护进程),kern(内核),lpr(打印系统),mail(邮件系统),mark(防火墙),news(新闻系统),security(安全),syslog(),user(用户),uucp(),local0~local7(内置的,用户可直接使用的facility)

 

priority:级别

debug(调试信息)infodebug外的所有信息),notice(提示)warningwarn(警告),errerror(错误),crit(蓝色警报),alert(橙色警报)emergpanic(红色警报)

 

指定级别的方式

*:记录所有级别的日志

none:没有级别,即不记录日志

priority:记录高于此级别(包含)的所有级别的日志

=priority:仅记录指定级别的日志

 

rsyslog的配置文件

/etc/rsyslog.conf

wKioL1VR0tzzrCKmAAF3mKsVy0c520.jpg

RULES

facility.priority                target

指定设施的指定级别所产生的日志记录于何处

                         

示例说明

如上图第一个,即表示任何facility(除了mail.none,authpriv.none,cron.none以外)产生的info及以上级别的日志信息,都记录于/var/log/messages文件中;

如上图最后一个,即表示任何facility产生的emerg级别的日志信息,通知给所有用户;

 

target

文件路径:将日志信息记录于指定的文件中,在文件路径前使用“-”表示异步写入

用户名称:将日志信息通知给指定的用户

日志服务器:日志不记录在本地,用“@SERVER”指明记录日志的服务器

管道:将记录的日志通过管道“| COMMAND”交由指定命令来处理


wKioL1VR03mR6KQeAALUBLhJOnM272.jpg

wKioL1VR04LQQIo2AALEZFjH_Qk406.jpg

wKiom1VR0guAGedoAALgWK3oFkE979.jpg

wKiom1VR0hbzpj4HAAWeZ35l76Q066.jpg

wKiom1VR0yCApHV2AAO2SJwHkbI662.jpg

wKioL1VR1J3j4o4mAAHqzR3oCSc021.jpg

wKioL1VR1KSgBBtnAANSXrGHQ9E751.jpg

wKiom1VR0y_j5NvTAAKaVcTwxlc113.jpg

wKioL1VR1LygkQnEAARjDFT8t_c524.jpg


你可能感兴趣的:(server,rsyslog,loganalyzer)