syslog/rsyslog的使用

syslogd是Linux下的一个记录日志文件服务。从结构来说,可以理解为这个服务下面有一系列的子服务,例如mail、auth、cron、kern等等,这些子服务对外提供日志记录的功能,而当其它的程序或服务需要记录日志的时候,就可以直接调用这些子服务将日志记录到设定的地方。而配置这整个守护进程以及其子服务的地方就是/etc/syslog.conf这个文件。

说明

而目前不少的Linux发行版已经用rsyslogd将syslogd代替了。rsyslogd是syslogd的升级版,其配置语法与syslogd的配置文件一致。

需要说明的是,在更老的版本中,syslogd作为服务端的配置是在/etc/sysconfig/syslog.conf配置文件中的,而现在很多的发行版采用了rsyslog之后就没有这个配置文件了。甚至在ubuntu中本身就不存在/etc/sysconfig/这个文件夹,这跟红帽系的发行版就不一样。而在rsyslog的配置文件中,也有少许不同:

#  ubuntu下的写法
# provides UDP syslog reception
module(load="imudp")
input(type="imudp" port="514")
# provides TCP syslog reception
module(load="imtcp")
input(type="imtcp" port="514")

# centos下的写法
# udp协议
$ModLoad imudp
$UDPServerRun 514
# tcp协议
$ModLoad imtcp
$InputTCPServerRun 514

上面的两种写法作用都是一样的。

配置文件语法

基础的配置语法可以参照《鸟哥的Linux私房菜:基础学习篇》第19章的内容。下面是将rsyslog配置成客户端/服务器这种结构。

<来源:https://www.kancloud.cn/wizardforcel/vbird-linux-basic-4e/152349 >

不同的发行版的配置形式有所不同,下面仅以ubuntu16.04LTS版为例说明。

配置

服务器端

以ubuntu作为日志系统的服务器,需要进行一下简单的配置:

<来源:https://linux.cn/article-5023-1.html  >

1.  在/etc/rsyslog.conf配置文件以下的语句去掉注释:

# provides UDP syslog reception
module(load="imudp")
input(type="imudp" port="514")
# provides TCP syslog reception
module(load="imtcp")
input(type="imtcp" port="514")

2.  # 定义模板(可选),如果没有模板就跟本机的日志文件混在一起

$template templatename ,  ‘/var/log/%HOSTNAME%/%PROGRAMNAME%.log‘ *
# 使用日志模板写入日志
*.*    ?templatename
&~

"& ~"表示了一个重定向规则,被用来告知rsyslog守护进程停止对日志消息的进一步处理,并且不要在本地写入。如果没有使用该重定向规则,那么所有的远程消息都会在写入上述描述的日志文件之外同时被写入到本地日志文件,这就意味着日志消息实际上被写了两次。使用该规则的另外一个结果就是syslog服务器本身的日志消息只会被以该机器主机名命名的专有文件中。

客户端

在客户端方面,只要将对应的子服务的目标储存文件写成远程的ip:port 即可,例如:

# mail  @指明用udp协议传输
mail.*     @192.168.150.138:514

# auth  @@指明用udp协议传输
auth.*     @@192.168.150.138:514

# 更常见的是全部日志文件都指向远程主机

*.*     @192.168.150.138:514

3. 修改了配置文件之后,无论是客户端还是服务器端,都要重启rsyslogd服务

sudo service rsyslog restart

时间: 2024-10-10 18:26:13

syslog/rsyslog的使用的相关文章

syslog,rsyslog and syslog-ng

http://en.wikipedia.org/wiki/Syslog Syslog is a standard for computer message logging. It permits separation of the software that generates messages from the system that stores them and the software that reports and analyzes them. Syslog can be used

syslog+rsyslog+logstash+elasticsearch+kibana搭建日志收集

最近rancher平台上docker日志收集捣腾挺久的,尤其在配置上,特写下记录 Unix/Linux系统中的大部分日志都是通过一种叫做syslog的机制产生和维护的.syslog是一种标准的协议,分为客户端和服务器端,客户端是产生日志消息的一方,而服务器端负责接收客户端发送来的日志消息,并做出保存到特定的日志文件中或者其他方式的处理. ryslog 是一个快速处理收集系统日志的程序,提供了高性能.安全功能和模块化设计.rsyslog 是syslog 的升级版,它将多种来源输入输出转换结果到目的

搭建 rsyslog+mysql+loganalyzer

实验环境: 当前操作系统:Linux CentOS 7 3.10.0-327.el7.x86_64 所需要的软件包: 1,mysql: mariadb-5.5.44-2.el7.centos.x86_64 2, loganalyzer: loganalyzer-3.6.5 3, httpd: httpd-2.4.6-40.el7.centos.x86_64 4, php: php-5.4.16-36.el7_1.x86_64 5, php-mysql: php-mysql-5.4.16-36.e

rsyslog 详解3

http://www.centosabc.com/archives/601 http://www.cnblogs.com/aguncn/p/4249175.html rsyslog服务和logrotate服务======================================================================rsyslog 是一个 syslogd 的多线程增强版.现在Fedora和Ubuntu, rhel6默认的日志系统都是rsyslog了rsyslog负责

CentOS 6.7下利用Rsyslog+LogAnalyzer+MySQL部署日志服务器

一.简介 LogAnalyzer 是一款syslog日志和其他网络事件数据的Web前端.它提供了对日志的简单浏览.搜索.基本分析和一些图表报告的功能.数据可以从数据库或一般的syslog文本文件中获取,所以LogAnalyzer不需要改变现有的记录架构.基于当前的日志数据,它可以处理syslog日志消息,Windows事件日志记录,支持故障排除,使用户能够快速查找日志数据中看出问题的解决方案. LogAnalyzer 获取客户端日志会有两种保存模式,一种是直接读取客户端/var/log/目录下的

CentOS 6.5下利用Rsyslog+LogAnalyzer+MySQL部署日志服务器

一.简介 LogAnalyzer 是一款syslog日志和其他网络事件数据的Web前端.它提供了对日志的简单浏览.搜索.基本分析和一些图表报告的功能.数据可以从数据库或一般的syslog文本文件中获取,所以LogAnalyzer不需要改变现有的记录架构.基于当前的日志数据,它可以处理syslog日志消息,Windows事件日志记录,支持故障排除,使用户能够快速查找日志数据中看出问题的解决方案. LogAnalyzer 获取客户端日志会有两种保存模式,一种是直接读取客户端/var/log/目录下的

Rsyslog日志服务器搭建、loganalyzer安装使用

公司使用CactiEz做为网络监控平台,可以实时监控网络设备及出口流量外加邮件报警,虽然有一个延迟但基本够用. 除此之外,还需要一个日志服务器.因为设备比较多,设备如果断电重启,问题排除还需借助日志. 华为交换机端配置如下: info-center source default channel 2 log level warning #日志级别,设置为warning警告最为合适 info-center loghost source Vlanif1101 # 源vlan info-center l

Rsyslog配置文件详解

rsyslog服务和logrotate服务======================================================================rsyslog 是一个 syslogd 的多线程增强版.现在Fedora和Ubuntu, rhel6默认的日志系统都是rsyslog了rsyslog负责写入日志, logrotate负责备份和删除旧日志, 以及更新日志文件------------------------rsyslog 服务--------------

rsyslog日志系统浅析

Rsyslog时CentOS6.X自带的一款系统日志工具,相对与Centos5的syslog,有了很大的提升,拥有如下特性: 1.支持多线程 2.支持TCP,SSL,TLS,RELP等协议 3.支持将日志写入MySQL, PGSQL, Oracle等多种关系型数据中 4.拥有强大的过滤器,可实现过滤系统信息中的任意部分 5.可以自定义日志输出格式 6.适用于企业级的日志记录需求 今天,我们就来了解一下Rsyslog的使用以及利用loganalyzer来通过网页管理日志. 1.rsyslog的配置