日志

一、何为日志

在程序执行时,可以通过标准输出以及错误输出,让我们知道程序的执行情况,而系统不可能将所有程序的输出信息一起显示,要知道后台执行的程序非常之多,如果一起显示,那我们不用操作了,整天只看输出结果就够忙了!

这时就需要日志系统了,有了日志之后,系统可以讲所有程序的输出结果,分类到日志中,通过查看日志,我们就可以知道系统的运行情况。

ping 192.168.18.254 >> /tmp/cjk这么简单的一条命令,其实就是一个日志,将ping的结果输出到cjk中,我们可以通过cat /tmp/cjk来了解ping命令的运行情况。

二、系统日志服务组件

1、rsyslogd

    全名为系统日志服务System Log Daemon,用来采集用户的应用程序或者服务产生的信息。

2、logger

    这是一个日志服务的客户端工具,可以使用这个工具,直接在shell中传递信息给系统日志服务,通常用为测试系统日志服务。

三、日志服务安装

 

    rpm -q rsyslogd

    #查询是否已经安装

    yum -y install rsyslog(6以下rsyslogd)

    #安装系统日志服务

四、日志服务运行状态管理

    service rsyslog stop

    #关闭日志服务

    service rsyslog start

    #开启日志服务

    chkconfig rsyslog on

    #设为开机启动

    chkconfig rsyslog off

    #设置为开机不启动

五、日志服务配置

    配置文件的路径/etc/rsyslog.conf

    格式:

    FACILITY.PRIORITY ACTION

    信息来源.优先级别 处理方式

    信息来源列表

 

说明

authpriv

与安全验证有关的信息。

cron

包含at或cron定时执行系统产生的信息。

daemon

一般服务器的信息。

kern

来自内核信息。

lpr

打印系统传来信息。

mail

电子邮件系统信息。

news

来自NetNews系统的信息。

syslog

syslog服务器本身信息

user

一般用户等级信息。

uucp

UUCP子系统信息。

localN

保留。

安全级别列表

程度

项目

说明

轻微

debug

只是排错信息,仅对程序开发人员有用,对系统管理者的你是没有太大意义的。

 

info

通常这是正常信息,你也可以忽略info的信息。

 

notice

这是稍微要注意的信息。

 

warn

可能有问题的警告信息。

 

err

这是错误信息。

 

crit

这是危急错误。

 

alert

这是需特别留意的警报信息。

严重 

emerg

这是紧急状况,如果再不处理该服务或系统可能会宕

PRIORITY的计算方式:

PRIORITY:代表等于,或高于PRIORITY。例如,err相当等于err + crit +alert + emerg。

=PRIORITY:恰等于PRIORITY。例如,=err就是err本身。

!PRIORITY:代表除了PRIORITY之外的。例如,!err就为debug + info +notice + warn + crit + alert + emerg。

除此之外,FACILITY与PRIORITY可以使用星号代表所有的,因此*.* 就表示所有的FACILITY的所有PRIORITY信息。

ACTION字段则是用来定义如何处理接收到的信息。可以指定:

/PATH/FILENAME:将信息储存至/PATH/FILENAME文件中。注意,如要系统日志服务把信息储存到文件,这个文件必须要写绝对路径。

USERNAME:将信息送给已登录用户。

@HOSTNAME:代表将信息转到HOSTNAME的系统日志服务器。

*:将信息传送给所有已登录的用户。

六、日志格式

DATE:信息发生日期。

TIME:信息发生时间。

HOSTNAME:信息发生主机。

APP:产生信息软件。

NAME:软件名称,或是软件组件名称。可以省略。

PID:进程标识。可以省略。

MESSAGES:信息内容。

七、集中式的日志服务

1、为什么需要集中式日志服务

如果你负责管理很多台LINUX服务器,你就需要登录每台服务器查看上面的日志,特别麻烦,如果通过集中式的日志服务,就可以将日志收集起来,统一管理。

2、集中式日志服务的架构

 

 

3、设置步骤

a.修改客户端的配置文件,路径是/etc/rsyslog.conf,加如下参数*.* @logserver。

 

b.修改服务端的配置文件,路径是/etc/rsyslog.conf,取消如下注释:

 

c.重启客户端和服务端的日志服务。

 

八、日志切割

logrotate

日志切割

/etc/logrotate.conf

配置文件

/etc/logrotate.d/

切割配置

logrotate

选项:

-v

详细信息

-f

强制

原文地址:https://www.cnblogs.com/pangzi520/p/10103998.html