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. 4.MySQL连接并选择数据库(SQL & C)

    在连接了MySQL数据库之后,可以通过SQL命令或者C.PHP.JAVA等程序来指定需要操作的数据库.这里主要介绍SQL命令和相应的C程序. 首先创建用户rick(赋予所有权限) mysql> ...

  2. Finding a needle in Haystack: Facebook’s photo storage

    http://www.importnew.com/3292.html 面向对象存储系统

  3. head 头标签(转发)

    HTML head 头标签 paddingme | 04 Oct 2014 HTML head 头部分的标签.元素有很多,涉及到浏览器对网页的渲染,SEO 等等,而各个浏览器内核以及各个国内浏览器厂商 ...

  4. svg学习笔记(一)

    SVG——可扩展适量图形,基于XML PC端:IE9+   wap端:表现良好,适合使用 基础图形: line(线段)  <line x1="25" y1="150 ...

  5. JS获得QQ号码的昵称,头像,生日

    这篇文章主要介绍了JS获得QQ号码的昵称,头像,生日的简单实例,有需要的朋友可以参考一下 http://r.qzone.qq.com/cgi-bin/user/cgi_personal_card?ui ...

  6. Extjs4.2 多选下拉框

    //多选下拉框 Ext.define('MDM.view.custom.MultiComboBox', { extend: 'Ext.form.ComboBox', alias: 'widget.mu ...

  7. Memcached(七)Memcached的并发实例

    1. Memcached是什么?Memcached是分布式的内存对象缓存系统.  2. Memcached的基本数据结构是什么?Memcached是基于Key/Value对的HashMap.每一对,都 ...

  8. web前端开发分享-css,js进阶篇

    一,css进阶篇: 等css哪些事儿看了两三遍之后,需要对看过的知识综合应用,这时候需要大量的实践 经验, 简单的想法:把qq首页全屏另存为jpg然后通过ps工具切图结合css转换成html,有无 从 ...

  9. C#解压、压缩RAR文件

    using System; using System.Collections.Generic; using System.Text; using System.IO; using Microsoft. ...

  10. 练习PYTHON之EVENTLET

    以下是重点,要会运用: eventlet是一个用来处理和网络相关的python库函数,而且可以通过协程来实现并发,在eventlet里,把“协程”叫做 greenthread(绿色线程).所谓并发,就 ...