Linux认识和分析日志文件

前言

唉,这周本来想彻底研究一下树的数据结构,结果搭建了基于nginx+php-fpm的web server运行模式,回到宿舍就太累没心思再思考数据结构和算法,就这样吧,这周就只搞运维了,虽然之间也写了点php代码学了点设计模式

syslogd:记录日志文件的服务

日志内容的一般格式

一般来说,系统产生的信息经过syslog而记录下来的数据中,每条信息均会记录下面几个重要数据:

(1)事件发生的日期与时间

(2)发生此事件的主机名

(3)启动此时间的服务名称

(4)该信息的实际数据内容

举个例子如下:

解释一下其中一条数据:在2012年11月15日的10:13:34秒,错误信息是php-fpm绑定的ip地址被使用了,主机名和服务名称是我自己设置没加上

syslog的配置文件

Ubuntu 10.04之后,syslog的配置文件在

/etc/rsyslog.conf

配置文件的内容可以简单分为三部分说明:

服务名称

auth : 主要与认证有关的机制 cron : 就是例行性工作调度crontab等生成信息日志的地方 daemon : 就是各个daemon有关的信息 kern : 就是内核(kernel)产生信息的地方 lpr : 打印相关信息 mail : 只要与邮件收发有关的信息记录在此 news : 与新闻组服务器有关的东西

信息等级

info : 一些基本的信息说明 notice : 除了info还需要注意的一些信息内容 warning : 警示的信息,可能有问题,但是不至于影响到某个daemon的运行 error : 一些重大的错误信息 crit : 比error还要严重的错误信息 alert : 警告,已经很有问题的等级 emerg : “疼痛”等级,意指系统已经几乎要死机状态!

链接符号[.|.=|.!]

. : 代表比后面还要高的等级(含该等级)都被记录下来的意思。例如:news.err 代表只要是news的信息,,而且该信息的等级大于等于error级别就会被记录下来的意思 .= : 代表所需要的等级==后面链接的等级,其它的不要 .! : 代表不等于,即除了该等级之外的等级都记录下来

说下题外话:

一个程序员一般会尽全力消除程序中所有的notice,因此到现在我也是仅仅见过error级别的,error之上的我觉得可能需要更大并发量的时候才能遇到

不做任何解释。没有人明白,

Linux认识和分析日志文件

相关文章:

你感兴趣的文章:

标签云: