日志分析是一个成熟的应用中必不可少的,由于现阶段很多系统都是通过多机负载的方式提供服务,多机的设置带来的问题是日志文件也会存放在多台主机之上。如果简单的进行非实时的日志分析,这样的局面只要进行一次日志合并就好了,不会影响太大,但对于实时日志分析而言,这样做的麻烦多多。你当然可以采用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
#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 },
{ "news", LOG_NEWS },
{ "security", LOG_AUTH },
{ "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 },
{ "info", LOG_INFO },
{ "none", INTERNAL_NOPRI },
{ "notice", LOG_NOTICE },
{ "panic", LOG_EMERG },
{ "warn", LOG_WARNING },
{ "warning", LOG_WARNING },
阅读(4494) | 评论(1) | 转发(0) |