简单介绍

  • syslog系统日志服务协议,标准出来的比较晚
  • 用于记录系统日志或者用户程序产生的日志
  • 采用C/S架构,本地可以通过socket和syslogd守护进程通讯,远程通过TCP/UDP协议通信,支持加密,默认端口是514
  • 除了可以记录本地日志之外,还可以作为中继器(relay转发)或者接收器(collector)接收来自支持syslog协议客户端的日志
  • CentOS6.0后,使用rsyslogd代替syslogd,rsyslogd是对syslogd的增强和扩展
  • rsyslogd支持文件写入本地文件,也支持写入关系型数据库,或者写入Kafka以及hdfs
  • 注意
    • 如果日志信息包含多行,每一行是syslog的一个msg,对于整体分析会有问题
  • syslog整体架构

  • rsyslogd内部实现



(图片来源rsyslog官方文档)

syslog格式

  • HEADER MSG
  • <>包含的是Facility+Severity
  • HEADER部分包含 时间 + host/ip
  • MSG是具体的消息内容

syslog配置文件

  • 每一行表示一个项目,格式为:facility.level action
  • 常见的facility有:
    • kern: 内核信息
    • user: 用户进程相关信息
    • mail: 电子邮件相关信息
    • daemon: 后台进程相关信息
    • authpriv: 包括特权信息如用户名在内的认证活动等
    • cron: 计划任务信息
    • syslog: 系统日志信息
  • 重要级(按严重程度由低到高排序):
    • debug: 调试信息
    • info: 打印的信息
    • none: 没有重要级,通常用于排错
    • notice: 具有重要信息的普通条件
    • warning: 警告信息
    • err: 错误信息
    • crit: 阻止某些工具或子系统功能实现的错误条件
    • alert: 需要立即被修改的条件
    • emerg: 该系统不可用
  • 操作动作
    • 文件
    • 远程日志服务
    • 其他存储
# /etc/rsyslog.conf

# Provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514 # php-fpm daemon messages
if $syslogfacility-text == "daemon" and $programname == "php-fpm" then /var/log/php-fpm-error.log # php error messages
if $syslogfacility-text == "user" and $programname == "php" then /var/log/php-error.log
  • 重启rsyslogd服务(CentOS7)
[root@wadeyu ~]# systemctl restart rsyslog

参考资料

rsyslogd系统日志服务总结的更多相关文章

  1. 系统日志服务rsyslog

    一.系统日志服务rsyslog:多线程,可以基于UDP.TCP.TLS协议进行远程通信,还可以将数据存储到MySQL.PGSQL.Oracle,强大的过滤器,可实现过滤日志信息中任何部分,可以自定义输 ...

  2. Linux rsyslogd日志服务

    日志基本格式 基本日志格式包含四列: 事件发生的时间 发生事件的服务器的主机名 产生事件的服务名或程序名 事件的具体信息 /etc/rsyslog.conf配置文件 mail.*            ...

  3. 【APUE】Chapter13 Daemon Processes

    这章节内容比较紧凑,主要有5部分: 1. 守护进程的特点 2. 守护进程的构造步骤及原理. 3. 守护进程示例:系统日志守护进程服务syslogd的相关函数. 4. Singe-Instance 守护 ...

  4. 『学了就忘』Linux日志管理 — 91、日志服务rsyslogd说明

    目录 1.日志文件格式 2.rsyslogd服务的配置文件 (1)rsyslog.conf文件内容 (2)rsyslog.conf配文件内容说明 (3)定义自己的日志 1.日志文件格式 只要是由日志服 ...

  5. rsyslog和logrotate服务

    参考: http://www.lampbo.org/others/opensource/rsyslog-config-file-detail.html http://bangerlee.blog.ch ...

  6. 系统自带的日志管理工具-rsyslogd

    系统自带的日志管理工具-rsyslogd 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.日志管理简介 1.什么是日志 系统日志是记录系统中硬件.软件和系统问题的信息,同时还可以 ...

  7. Linux 系统日志管理

    Linux rsyslogd服务及启动方法 在 CentOS 6.x 中,日志服务已经由 rsyslogd 取代了原先的 syslogd.Red Hat 公司认为 syslogd 已经不能满足工作中的 ...

  8. Linux-本地日志服务管理(rsyslog基础)

    目录 系统环境 1.常见的两种日志管理服务 1.1 RSYSLOG系统日志服务 1.2 ELK 2.RSYSLOG日志服务的相关知识 2.1 RSYSLOG日志消息级别 2.2 RSYSLOG日志服务 ...

  9. 如何查看linux系统下的各种日志文件 linux 系统日志的分析大全

    日志分类: 1. 连接时间的日志 连接时间日志一般由/var/log/wtmp和/var/run/utmp这两个文件记录,不过这 两个文件无法直接cat查看,并且该文件由系统自动更新,可以通过如下: ...

随机推荐

  1. JData 整合ArtTemplate的前端框架

    因为项目需要和自己的兴趣,几个月前结合模板解析神速的ArtTemplate,自己写了个框架取名JData,多多指教啊---因为一直没时间写文档,为了能够更方便地使用和避免我把代码忘了,今天抽空把文档写 ...

  2. window下phpstudy开启redis扩展

    注:一定要注意自己PHP的版本结构是64还是32位的!其次查看PHP Extension Build是NTS or TS! 1.使用phpinfo()函数查看PHP的版本信息,这会决定扩展文件版本(特 ...

  3. php查询快递信息

    $code = 'shunfeng'; $invoice = '952255884068'; $test = getExpressDelivery($code,$invoice); function ...

  4. 比较 String,StringBuffer,StringBuilder

    1)三者在执行速度方面的比较:StringBuilder >  StringBuffer  >  String 2)String <(StringBuffer,StringBuild ...

  5. ALTER LANGUAGE - 修改一个过程语言的定义

    SYNOPSIS ALTER LANGUAGE name RENAME TO newname DESCRIPTION 描述 ALTER LANGUAGE 修改一门语言的定义. 目前唯一的功能就是重命名 ...

  6. MFCEditBox如何自动换行

    设置该EditBox属性: 1.Auto HScroll             False 2.OEM Convert           False 3.Want Return           ...

  7. 【转】c语言中的定义和声明

    1. 变量的定义.声明 变量的声明有两种情况: 一种是需要建立存储空间的.例如:int  a.在声明的时候就已经建立了存储空间.这种声明是"定义性声明(defining declaratio ...

  8. Dynamic Web Module版本对应tomcat版本

    MyEclipse2017+JDK 1.8环境下 Dynamic Web Module版本3.1要对应tomcat7.0以上版本,不然部署项目时会出现错误(会出现无法部署项目的情况). Dynamic ...

  9. JavaSE-14 异常处理

    学习要点 使用try-catch-finally处理异常 使用throw.throws抛出异常 异常及其分类 log4j记录日志 异常 1  异常的定义 异常是指在程序的运行过程中所发生的不正常的事件 ...

  10. .net+EF+mvc通过EasyUI的DataGrid实现增删改查

    @{    Layout = null;} <!DOCTYPE html> <html><head>    <meta name="viewport ...