syslog是linux系统中默认的日志守护进程,默认的syslog配置文件是/etc/syslog.conf文件。程序、守护进程和内核提供了访问系统的日志信息。任何希望生成日志信息的程序都可以向syslog接口呼叫产生该信息。

几乎所有的网络设备都可以通过syslog协议,将日志信息通过udp方式传送到远端的服务器,而远端的服务器通过syslogd监听udp的514端口,并且根据syslog.conf配置文件中的配置进行处理,接受访问系统的日志信息,把指定的事件写入到特定的文件中,供后台数据库管理和响应之用。它意味着我们可以让任何事件都登录到一台或者多台服务器上,以备后台数据库用off-line也就是离线的方式来分析远端设备的事件。

而/etc/syslog.conf使用facility.level action的方式,而facility.level为选择条件,它本身是两个字段,之间用一个小数点分割,前一个字段是一个服务,后一个字段是一个优先级。选择条件其实是对消息类型的一种分类,这种分类便于人们把不同类型的消息发送到不同的地方。在同一个syslog配置上允许出现一个以上的选择条件,但是必须使用分号隔开。而action字段所表示的活动具有许多灵活性,特别是我们可以使用管道来使得syslogd生成后处理信息。

通常facility指的是syslog可以检测的功能,其中kern指的是内核信息,它通过klogd来传送,而user是用户进程,而mail是邮件,而daemon是后台进程,而authpriv是授权信息,而syslog是系统日志,而lpr是打印信息,而new是新闻组信息,而uucp则是由uucp产生的信息,而cron则是计划和任务信息,而mark则是由syslog内部功能用于生成时间戳。而local0-7与自定义程序使用,比如使用local5表示ssh功能。而*表示出了mark之外的所有功能。

其中level指的是syslog的优先级,其中emerg或者panic表示系统不可用,而alert表示需要立即被修改的条件,而crit表示阻止某些工具或者子系统功能实现的错误条件,err表示阻止工具或者某些子系统部分功能实现的错误条件,而warning是警告消息,而notice则是普通消息,而info则是通知性消息。

syslog的守护程序是由/etc/rc.d/init.d/syslog脚本被调用启动的,缺省不使用选项。如果将要使用一个日志服务器,必须调用syslogd -r,缺省情况下syslog不接受来自远程系统的消息。当指定了-r选项后,syslogd会监听从514端口上进来的udp包。

如果还希望日志服务器能够传送日志消息,则可以使用-h标识。缺省时,syslogd将忽略使其从一个远程系统传送日志消息到另一个系统的/etc/syslog.conf输入项。

对配置文件的修改需要重启syslogd程序才会生效,可以使用/etc/rc.d/init.d/syslog restart即可。更多精彩内容欢迎继续访问系统部落(www.xitongbuluo.com)!

Linux中的syslog 入门学习教程的更多相关文章

  1. Linux入门学习教程:虚拟机体验之KVM篇

    本文中可以学习到的命令: 1. aptitude 是apt-get 不会产生垃圾的版本 2.       dpkg -L virtualbox 显示属于该包的文件 lsmod | grep kvmfi ...

  2. Nginx 入门学习教程

    昨天听一个前同事说他们公司老大让他去研究下关于Nginx 方面的知识,我想了下Nginx 在如今的开发技术栈中应该会很大可能会用到,所以写篇博文记录总结下官网学习教程吧. 1. 什么是Nginx? 我 ...

  3. MyBatis入门学习教程-使用MyBatis对表执行CRUD操作

    上一篇MyBatis学习总结(一)--MyBatis快速入门中我们讲了如何使用Mybatis查询users表中的数据,算是对MyBatis有一个初步的入门了,今天讲解一下如何使用MyBatis对use ...

  4. MySQL中的联合索引学习教程

    MySQL中的联合索引学习教程 这篇文章主要介绍了MySQL中的联合索引学习教程,其中谈到了联合索引对排序的优化等知识点,需要的朋友可以参考下   联合索引又叫复合索引.对于复合索引:Mysql从左到 ...

  5. PHP 入门学习教程及进阶(源于知乎网友的智慧)

    思过崖历程: 自学的动机.自学的技巧.自学的目标三个方面描述学习PHP的经历 一.自学的动机: 一定要有浓厚的兴趣,兴趣是最后的老师,可以在你迷茫的时候不断地支撑着你走下去. 自学不是为了工作,不是为 ...

  6. Android M中 JNI的入门学习

    今年谷歌推出了Android 6.0,作为安卓开发人员,对其学习掌握肯定是必不可少的,今天小编和大家分享的就是Android 6.0中的 JNI相关知识,这是在一个安卓教程网上看到的内容,感觉很不错, ...

  7. linux中使用Python IDE pycharm教程

    今天使用vim编辑Python 并在linux中终端调试的时候,发现每次不是自己想要输出结果的时候,就要用vim编辑代码,再重新回到终端,比较浪费时间.搜索发现pycharm这一个Python ide ...

  8. MyBatis入门学习教程-优化MyBatis配置文件中的配置

    一.连接数据库的配置单独放在一个properties文件中 之前,我们是直接将数据库的连接配置信息写在了MyBatis的conf.xml文件中,如下: 1 <?xml version=" ...

  9. Ruby中任务构建工具rake的入门学习教程

    参考:http://www.jb51.net/article/81476.htm Rake简介 Rake的意思是Ruby Make,一个用ruby开发的代码构建工具. 但是,为什么Ruby需要Rake ...

随机推荐

  1. 【转】提高PHP性能的53个技巧

    PHP技巧汇总:提高PHP性能的53个技巧用单引号代替双引号来包含字符串,这样做会更快一些.因为PHP会在双引号包围的字符串中搜寻变量,单引号则不会,注意:只有echo能这么做,它是一种可以把多个字符 ...

  2. Qwt的编译与配置

    QWT,全称是Qt Widgets for Technical Applications,是一个基于LGPL版权协议的开源项目, 可生成各种统计图.它为具有技术专业背景的程序提供GUI组件和一组实用类 ...

  3. JSFunction-Javascript常用函数库

    最近正在整理书写常用的Javascript函数库,此函数库近期会持续更新 JSFunction 这里可以找到你经常想要使用的js函数,我正在努力完善它 希望它对你有所帮助 相信代码是优雅的舞者.--北 ...

  4. oracle日期格式数据修改

    select * from INVOICE_NEW where ref_no='32308' update INVOICE_NEW set check_d=to_date('2015/11/16', ...

  5. php中utf8 与utf-8 与utf8 无BOM

    utf8 与utf-8 相信很多程序员刚开始也会有这样的疑惑,如题,我也是.    其实,他们可以这样来区分.    一.在php和html中设置编码,请尽量统一写成“UTF-8”,这才是标准写法,而 ...

  6. post请求json内容丢失问题

    今天在项目组用json传输数据 post方法提交 发现传输过去的数据json内的+ 号被直接干掉了. 后来传输之前直接先编码. 接收端: public void ProcessRequest(Http ...

  7. ios App优化

    一. 静态分析(Analyze) 在Xcode菜单栏中点击 ”Product“ -> "Analyze",编译完成后项目工程中可能造成内存泄露的代码就会被标记出来,这样我们就 ...

  8. AES加密算法原理

    随着对称密码的发展,DES数据加密标准算法由于密钥长度较小(56位),已经不适应当今分布式开放网络对数据加密安全性的要求,因此1997年NIST公开征集新的数据加密标准,即AES[1].经过三轮的筛选 ...

  9. 服务器环境搭建系列(三)-JDK篇

    1.如果系统已经有jdk,卸载之. rpm -qa|grep java rpm -e --nodeps 上面命令返回的软件包名字 或者 yum -y remove 上面命令返回的包名 下载bin文件, ...

  10. 肾果手机App Store切换区域(无需Visa或者万事达)

    8月份在肾果官网买了个touch6,有时候需要换区去墙外下载app,然而一个个国家都要输入Visa或者万事达卡...今天终于找到一个不用输入信用卡号的区域:Canada!!! 办法(适用于8.X,7. ...