目录:

syslog之一:Linux syslog日志系统详解

syslog之二:syslog协议及rsyslog服务全解析

syslog之三:建立Windows下面的syslog日志服务器

Linux下dmesg命令处理故障和收集系统信息的7种用法

一、syslog简介

syslog是一种工业标准的协议,可用来记录设备的日志。在UNIX系统,路由器、交换机等网络设备中,系统日志(System Log)记录系统中任何时间发生的大小事件。管理者可以通过查看系统记录,随时掌握系统状况。UNIX的系统日志是通过syslogd这个进程记录系统有关事件记录,也可以记录应用程序运作事件。通过适当的配置,我们还可以实现运行syslog协议的机器间通信,通过分析这些网络行为日志,藉以追踪掌握与设备和网络有关的状况。

功能:记录至系统记录。

二 、syslog服务与配置

2.1、安装syslog软件包

软件包名称为:rsyslog-5.8.10-10.el6_6.x86_64

我用的是centos系统,配置的有第三方的yum源,我直接yum install直接装就OK了

装完后用 rpm -qa | grep syslog下看是否已安装

2.2、syslog日志系统可以根据程序详细信息的不同定义不同的日志级别

2.3、Linux上的日志系统分为:syslog和syslog-ng(syslog日志系统的升级版)

2.4、syslog服务:

syslog服务进程分两个,分别是:syslogd(系统,非内核产生的日志)和klogd(专门记录内核产生的日志)

kernel-->物理终端(/dev/console)-->/var/log/dmesg

  其中/var/log/dmesg文件可以使用dmesg命令和cat查看文件内容

日志滚动(日志切割):

所谓的滚动是指历史信息所保存的日志,如;messages文件日志会越来越大等到了某一段时间,会把messages文件重新命名为messages.1,系统并重新创建messages文件,所以叫做日志滚动

/sbin/init

/var/log/messages:系统标准错误日志信息;非内核产生的引导信息,各子系统产生的信息

/vat/log/maillog:邮件系统产生的日志信息

/vat/log/secure:安全相关log

系统自带的日志切割程序logrotate

logrotate脚本配置文件

  1. [root@localhost cron.daily]# pwd
  2. /etc/cron.daily
  3. [root@localhost cron.daily]# vim logrotate

滚动日志信息配置文件

  1. [root@localhost cron.daily]# pwd
  2. /etc/cron.daily
  3. [root@localhost cron.daily]# vim /etc/logrotate.conf
  4. # see "man logrotate" for details
  5. # rotate log files weekly
  6. weekly #每周滚动一次
  7. # keep weeks worth of backlogs
  8. rotate #只保留4个切割版本文件,超过后清除
  9. # create new (empty) log files after rotating old ones
  10. create #滚动完之后创建一个空的新的文件
  11. # use date as a suffix of the rotated file
  12. dateext
  13. # uncomment this if you want your log files compressed
  14. #compress
  15. # RPM packages drop log rotation information into this directory
  16. include /etc/logrotate.d #包括/etc/logrotate.d 下的文件,手动添加可直接添加到此目录
  17. # no packages own wtmp and btmp -- we'll rotate them here
  18. /var/log/wtmp{
  19. monthly #按月,自己定义
  20. create root utmp #创建文件并0664权限
  21. minsize 1M #最新1M
  22. rotate #保留几个版本
  23. }
  24. /var/log/btmp{
  25. missingok
  26. monthly
  27. create root utmp
  28. rotate
  29. }
  30. # system-specific logs may be also be configured here.
  31. [root@localhost cron.daily]#

syslog配置文件/etc/rsyslog.conf

注:centos 6 的配置文件是/etc/rsyslog.conf,centos5的配置文件是/etc/syslog.conf

2.5、配置文件定义格式为facility.priority  action

facility是指哪个facility来源产生的日志;   priority是指拿个级别的日志 ;action是指产生日志怎么办是保存在文件中还是其他。。。

facility可以理解为日志的来源或设备或选择条件,目前常用的facility有以下几种:

auth                      #认证相关的

authpriv                #权限,授权相关的

cron                      #任务计划相关的

daemon                #守护进程相关的

kern                       #内核相关的

lpr                          #打印相关的

mail                        #邮件相关的

mark                       #标记相关的

news                       #新闻相关的

security                   #安全相关的,与auth类似

syslog                      #syslog自己的

user                         #用户相关的

uucp                        #unix to unix cp相关的

local0到local7          #用户自定义使用

*                                #*表示所有的facility

priority(log level)日志优先级的级别,一般分为以下几种级别(从低到高)

注:级别越低记录的越详细

debug                    #程序或系统的调试信息

info                         #一般信息

notice                     #不影响正常的功能,需要提醒用户的重要事件

warning/warn         #可能影响系统功能,需要提醒用户的重要事件

err/error                  #错误信息

crit                           #比较严重的

alert                         #必须马上处理的

emerg/canic            #会导致系统不可用的

*                               #表示所有的日志级别

none                        #跟*相反,表示什么也没有

action(动作)日志记录的位置

系统上的绝对路径      #普通文件 如:/var/log/XXX

|                                #管道 通过管道送给其他的命令出来

终端                          #终端 如:/dev/console

@host                      #远程主机  如@10.1.1.1

用户                          #系统用户 如:root

*                               #登录到系统上的所有用户,一般emerg级别的日志是这样定义的

定义格式列子:

mail.info  /var/log/mail.log   #表示将mail相关的,级别为info及info以上级别的信息记录到/var/log/mail.log文件中

auth.=info  @10.1.1.1            #表示将auth相关的,级别为info的信息记录到10.1.1.1主机上去,前提是10.1.1.1要能接收其主机发来的日志信息

user.!=error                            #表示记录user相关的,不包括error级别的信息

user.!error                           #表示user.error相反

*.info                                      #表示记录所有的日志信息的info级别

mail.*                                      #表示记录所有mail相关的所有级别的信息

*.*                                           #表示记录所有的日志信息的所有的日志级别

cron.info;mail.info                  #多个日志来源可以用“ ; ”隔开

cron,mail.info                         #与cron.info;mail.info        是一个意思

mail.*;mail.!=info                    #表示记录mail相关的所有级别的信息,但是不包括info级别的信息

重启服务

#service rsyslog reload    注:不重启但能读到配置文件;不建议重启

2.6、搭建Linux日志服务器

  1. 编辑配置文件 [root@localhost etc]# vim /etc/sysconfig/rsyslog

修改配置文件中SYSLOGD_OPTIONS="-c 5" 添加“ -r选项”即可

目的可以让服务器能够接受客户端传来的数据

配置文件如下

  1. [root@localhost etc]# vim /etc/sysconfig/rsyslog
  2. # Options for rsyslogd
  3. # Syslogd options are deprecated since rsyslog v3.
  4. # If you want to use them, switch to compatibility mode by "-c 2"
  5. # See rsyslogd() for more details
  6. SYSLOGD_OPTIONS="-r -c 5"
  7. ~

重启syslog服务

  1. [root@localhost etc]# service rsyslog restart
  2. 关闭系统日志记录器: [确定]
  3. 启动系统日志记录器:-r option only supported incompatibility modes to - ignored
  4. [确定]
  5. [root@localhost etc]#

2.7、搭建syslog客户端

在syslog配置文件中修改/etc/rsyslog.conf

  1. [root@localhost etc]# vim /etc/rsyslog.conf
  2. # Log all kernel messages to the console.
  3. # Logging much else clutters up the screen.
  4. #kern.* /dev/console
  5. # Log anything (except mail) of level info or higher.
  6. # Don't log private authentication messages!
  7. *.info;mail.none;authpriv.none;cron.none /var/log/messages
  8. # The authpriv file has restricted access.
  9. authpriv.* /var/log/secure
  10. # Log all the mail messages in one place.
  11. mail.* @192.168.1.66
  12. # Log cron stuff
  13. cron.* /var/log/cron
  14. .
  15. .
  16. .
  17. 省略

重启syslog客户端

  1. [root@localhost etc]# service rsyslog restart
  2. 关闭系统日志记录器: [确定]
  3. 启动系统日志记录器:-r option only supported incompatibility modes to - ignored
  4. [确定]
  5. [root@localhost etc]#

syslog之一:Linux syslog日志系统详解的更多相关文章

  1. Tomcat日志系统详解

    综合:Tomcat下相关的日志文件 Cataline引擎的日志文件,文件名catalina.日期.log Tomcat下内部代码丢出的日志,文件名localhost.日期.log(jsp页面内部错误的 ...

  2. 《Tomcat日志系统详解》

    综合:Tomcat下相关的日志文件 Cataline引擎的日志文件,文件名catalina.日期.log Tomcat下内部代码丢出的日志,文件名localhost.日期.log(jsp页面内部错误的 ...

  3. (转)Linux 系统设置 : dmesg 命令详解

    原文:https://blog.csdn.net/yexiangCSDN/article/details/80683246 https://www.cnblogs.com/duanxz/p/34770 ...

  4. 关于syslog日志功能详解 事件日志分析、EventLog Analyzer

    关于syslog日志功能详解 事件日志分析.EventLog Analyzer 一.日志管理 保障网络安全 Windows系统日志分析 Syslog日志分析 应用程序日志分析 Windows终端服务器 ...

  5. linux ./configure 的参数详解

    转载自http://blog.csdn.net/zjt289198457/article/details/6918656 linux ./configure 的参数详解   ./configure 该 ...

  6. 【转】linux中inittab文件详解

    原文网址:http://www.2cto.com/os/201108/98426.html linux中inittab文件详解 init的进程号是1(ps -aux | less),从这一点就能看出, ...

  7. 【转帖】Linux定时任务Crontab命令详解

    Linux定时任务Crontab命令详解 https://www.cnblogs.com/intval/p/5763929.html 知道有crontab 以及 at 命令 改天仔细学习一下 讲sys ...

  8. centos7.2环境nginx+mysql+php-fpm+svn配置walle自动化部署系统详解

    centos7.2环境nginx+mysql+php-fpm+svn配置walle自动化部署系统详解 操作系统:centos 7.2 x86_64 安装walle系统服务端 1.以下安装,均在宿主机( ...

  9. Linux定时任务Crontab命令详解_转

    转自:Linux定时任务Crontab命令详解 (部分修改) linux 定时系统则是由 cron (crond) 这个系统服务来控制的.Linux 系统上面原本就有非常多的计划性工作,因此这个系统服 ...

随机推荐

  1. Java中读取.properties配置文件的通用类

    由于Java中读取配置文件的代码比较固定,所以可以将读取配置文件的那部分功能单独作为一个类,以后可以复用.为了能够达到复用的目的,不能由配置文件中每一个属性生成一个函数去读取,我们需要一种通用的方法读 ...

  2. Mysql & Hive 导入导出数据

    ---王燕行转列sql select split(concat_ws(',',collect_set(cast(smzq as string))),',')[1] ,split(concat_ws(' ...

  3. AugularJS, Responsive, phonegap, BAE, SAE,GAE, Paas

    http://freewind.me/blog/20121226/1167.html http://88250.b3log.org/bae-sae-gae http://www.ruanyifeng. ...

  4. hibernate从浅至深

    hibernate在开发中的位置 web------>struts2--------->hibernate ORM框架 Hibernate是一个数据持久化层的ORM框架. Object:对 ...

  5. SSH整合 第二篇 工程初建

    SSH整合,第二篇. 创建工程 这里只是测试和理解hibernate.建立Java工程就好了. 1.hibernate-4.2.21.jar hibernate包下的required,即\hibern ...

  6. (最小生成树) Arctic Network -- POJ --2349

    链接: http://poj.org/problem?id=2349 Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 1371 ...

  7. (网络流 匹配 KM) Going Home --poj -- 2195

    链接: http://acm.hust.edu.cn/vjudge/contest/view.action?cid=82835#problem/D 有n个人有n栋房子,每栋房子里能进一个人,但每走一格 ...

  8. hdu 4888 最大流慢板

    http://acm.hdu.edu.cn/showproblem.php?pid=4888 添加一个源点与汇点,建图如下: 1. 源点 -> 每一行对应的点,流量限制为该行的和 2. 每一行对 ...

  9. node API buffer

    https://cnodejs.org/topic/5189ff4f63e9f8a54207f60c 1.拼接字符串时,String比buffer要快,buffer需要toString().当保存非u ...

  10. Python学习-16.Python中的错误处理

    虽然叫错误,但跟 C# 中的异常是一回事.只不过 Python 中叫错误(Error)而 C# 中叫异常(Exception). 先手工产生一个异常: file = open('','r') 上面一句 ...