简单介绍

  • 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. Farseer.net轻量级ORM开源框架 V1.5版本升级消息

    SHA-1: 0ede88104f269f108b68be1e87ffcead4a354ec6 * 提交V1.5版本1.新增:整表缓存的实现方式(提取接口,可由客户端算定义实现)2.新增:SQL配置化 ...

  2. html5开发移动混合App系列2-开发环境搭建(windows)

    Java下载: http://www.oracle.com/technetwork/java/javase/downloads/index.html 环境变量: JAVA_HOME=C:\Progra ...

  3. netstat -a 显示出你的计算机当前所开放的所有端口

    netstat -s -e 比较详细的显示你的网络资料,包括TCP.UDP.ICMP 和 IP的统计等 

  4. javascript——js string 转 int 注意的问题——parseInt(转)

    <script>     var   str='1250' ;  alert( Number(str) );  //得到1250 alert(parseInt(str));  //得到12 ...

  5. JS_类数组

    [目录] 什么是数组 非类数组 类数组对象转化为数组 [类数组] 什么是类数组? 定义: 不具有数组的所具有的方法 拥有length属性,其属性(索引)为非负整数 类数组 var obj = { 0 ...

  6. PyCharm 自动添加作者及时间

    打开pycharm,快捷键ctrl + alt + s 打开模板设置自己所需内容 完整打开路径:file>settings>editor>code style>file and ...

  7. vue-router scrollBehavior的用法

    问题: 使用keep-alive标签后部分安卓机返回缓存页位置不精确问题 解决方案: <div id="app"> <keep-alive> <rou ...

  8. js中5中继承方式分析

    //1.借用式继承   把sup的构造函数里的属性方法克隆一份sub实例对象     function Super(){       this.val = 1;       this.fun1 = f ...

  9. MATLAB优化——减少for的使用

    Table of Contents 1. MATLAB 2. 矩阵计算--全0行整体替换 MATLAB MATLAB作为一个强大的工具(可惜是收费的),在矩阵运算.绘制函数和数据.实现算法.创建用户界 ...

  10. Layui框架 中table解决日期格式问题

    使用templet自定义模板(详细查看官方文https://www.layui.com)  1.对Date的扩展,将 Date 转化为指定格式的String ,创建一个js文件: (dataForma ...