日志分析是一个成熟的应用中必不可少的,由于现阶段很多系统都是通过多机负载的方式提供服务,多机的设置带来的问题是日志文件也会存放在多台主机之上。如果简单的进行非实时的日志分析,这样的局面只要进行一次日志合并就好了,不会影响太大,但对于实时日志分析而言,这样做的麻烦多多。你当然可以采用nfs或者其他类似的文件共享实现,这样的问题又会出现在时间同步上,同样的,日志的频繁更新,以及TCP的通讯代价,造成当分析较多主机的时候同样也会有诸多问题。
增加一个日志纪录设备
默认的设备定义共有24个,建议使用local0(16)~local7(23)作为自定义的日志设备
说到这里,syslog共有info到emerg总计7个“疼痛等级”,这里采用一个统配“*”代表所有报错等级,您自己可以分别处理了。
要让rsyslog接受远程log,必须打开
将RSYSLOGD_OPTIONS="-c4"改成
RSYSLOGD_OPTIONS="-r -m 0"
ubuntu中是在/etc/default/rsyslog中配置的,RH系列在/etc/sysconfig/rsyslog
*.info;mail.none;authpriv.none;cron.none;local6.none /var/log/message
local6.* /export/logs/formatlog
/* facility codes */#define LOG_KERN (0<<3) /* kernel messages */#define LOG_USER (1<<3) /* random user-level messages */#define LOG_MAIL (2<<3) /* mail system */#define LOG_DAEMON (3<<3) /* system daemons */#define LOG_AUTH (4<<3) /* security/authorization messages */#define LOG_SYSLOG (5<<3) /* messages generated internally by syslogd */#define LOG_LPR (6<<3) /* line printer subsystem */#define LOG_NEWS (7<<3) /* network news subsystem */#define LOG_UUCP (8<<3) /* UUCP subsystem */#define LOG_CRON (9<<3) /* clock daemon */#define LOG_AUTHPRIV (10<<3) /* security/authorization messages (private) */#define LOG_FTP (11<<3) /* ftp daemon */
{ "auth", LOG_AUTH }, { "authpriv", LOG_AUTHPRIV }, { "cron", LOG_CRON }, { "daemon", LOG_DAEMON }, { "ftp", LOG_FTP }, { "kern", LOG_KERN }, { "lpr", LOG_LPR }, { "mail", LOG_MAIL }, { "mark", INTERNAL_MARK }, /* INTERNAL */ { "news", LOG_NEWS }, { "security", LOG_AUTH }, /* DEPRECATED */ { "syslog", LOG_SYSLOG }, { "user", LOG_USER }, { "uucp", LOG_UUCP },
{ "alert", LOG_ALERT }, { "crit", LOG_CRIT }, { "debug", LOG_DEBUG }, { "emerg", LOG_EMERG }, { "err", LOG_ERR }, { "error", LOG_ERR }, /* DEPRECATED */ { "info", LOG_INFO }, { "none", INTERNAL_NOPRI }, /* INTERNAL */ { "notice", LOG_NOTICE }, { "panic", LOG_EMERG }, /* DEPRECATED */ { "warn", LOG_WARNING }, /* DEPRECATED */ { "warning", LOG_WARNING },
收起