rsyslog的三种传输协议

rsyslog 可以理解为多线程增强版的syslog.

rsyslog提供了三种远程传输协议,分别是:

1. UDP 传输协议

基于传统UDP协议进行远程日志传输,也是传统syslog使用的传输协议;

可靠性比较低,但性能损耗最少, 在网络情况比较差,

或者接收服务器压力比较高情况下,可能存在丢日志情况。

在对日志完整性要求不是很高,在可靠的局域网环境下可以使用。

2.TCP 传输协议

基于传统TCP协议明文传输,需要回传进行确认,可靠性比较高;

但在接收服务器宕机或者两者之间网络出问题的情况下,会出现丢日志情况。

这种协议相比于UDP在可靠性方面已经好很多,并且rsyslog原生支持,配置简单,

同时针对可能丢日志情况,可以进行额外配置提高可靠性,因此使用比较广。

3.RELP 传输协议

RELP(Reliable Event Logging Protocol)是基于TCP封装的可靠日志消息传输协议;

是为了解决TCP 与 UDP 协议的缺点而在应用层实现的传输协议,也是三者之中最可靠的。

需要多安装一个包rsyslog-relp以支持该协议。

配置文件一般不会直接修改主配置文件,在/etc/rsyslog.d目录下创建新的配置文件,rsyslog会自动来加载

4.示例

(1)UDP传输配置

服务端创建配置文件udp.conf

# server configure

$Modload imudp

$UDPServerRun 

$AllowedSender UDP, 10.0.0.0/   #设置白名单

$template log_location, /var/log/%fromhost-ip%/%$YEAR%-%$MONTH%-%$DAY%.log

$template log_format, "%fromhost-ip% %msg%\n"

#把非本地传输的日志按照指定的文件路径及格式保存

:fromhost-ip, !isequal, "172.0.0.1" -?log_location;log_format

#已经匹配处理的内容,不再进行其他处理

& ~

客户端配置:

*.*       @10.0.0.1:

(2)TCP传输配置

服务端修改UDP为TCP

客户端修改:

*.*       @@10.0.0.1:

(3)RELP传输配置

$ sudo yum install rsyslog-relp(客户端和服务端)

服务端修改

$Modload imrelp

$UDPServerRun 

客户端修改

*.* :omrelp:10.0.0.1:

Rsyslog的三种传输协议简要介绍的更多相关文章

  1. Java 处理 XML 的三种主流技术及介绍

    Java 处理 XML 的三种主流技术及介绍 原文地址:https://www.ibm.com/developerworks/cn/xml/dm-1208gub/ XML (eXtensible Ma ...

  2. HTML中使用js的三种方式及优缺点介绍

    1.内部js: 在直接在页面的<script></script>标签内写js代码 优点:相对于使用行内js,内部js代码较为集中,与页面结构的实现代码耦合度较低,比较便于维护 ...

  3. HTTP协议简要介绍

    1. 网络基础 TCP/IP 通常使用的网络是在TCP/IP协议簇基础上运作的. HTTP属于它内部的一个子集. TCP/IP分为4个层次, 应用层, 传输层, 网络层, 链路层. (Applicat ...

  4. Linux中三种SCSI target的介绍之各个target的优劣

    版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/scaleqiao/article/deta ...

  5. 【收藏用】--切勿转载Java处理XML的三种主流技术及介绍

    原帖地址 : http://www.ibm.com/developerworks/cn/xml/dm-1208gub/ XML (eXtensible Markup Language) 意为可扩展标记 ...

  6. Spring学习(十八)Bean 的三种依赖注入方式介绍

    依赖注入:让调用类对某一接口实现类的依赖关系由第三方注入,以移除调用类对某一接口实现类的依赖.接下来将详细的向大家介绍Spring容器支持的三种依赖注入的方式以及具体配置方法:•    属性注入方法• ...

  7. Windos下的6种IO模型简要介绍

    windows进行数据的收发有6种IO模型.分别是阻塞(blocking)模型,选择(select)模型,异步选择(WSAAsyncSelect)模型,事件选择(WSAEventSelect )模型, ...

  8. Linux中三种SCSI target的介绍之LIO

    版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/scaleqiao/article/deta ...

  9. Linux三种SSH协议登陆方式

    在实际工作中遇到了三种不同SSH协议登陆Linux服务器的方式,由简单到复杂分别阐述:一.最简单也是最不安全的root账号密码登陆通过root账号+root密码登陆Linux服务器. 二.普通用户登陆 ...

随机推荐

  1. Linux C 语言之 Hello World 详解

    目录 Linux C 语言之 Hello World 详解 第一个 C 语言程序 程序运行原理 编译,链接 运行时 链接库 编译器优化 Hello World 打印原理 stdout, stdin 和 ...

  2. 树莓派安装OSMC打造家庭影院,还可以看优酷和CCTV

    1.OSMC是什么? OSMC是树莓派官方推荐的影音系统,是一款开源的操作系统,是Openelec的升级版,同样是基于Kodi的开源项目.OSMC,使用它可以将树莓派打造成一款全功能的家庭影院系统,它 ...

  3. MySQL优化#参数配置优化

    ( 1).查看mysql里的线程,观察是否有长期运行或阻塞的sql: show full processlist 经查看,没有发现相关线程,可排除该原因 (2).疑似mysql连接使用完成后没有真正释 ...

  4. 如何通过SQL语句写入webshell

    在web应用场景下,经常会碰到SQL注入场景,如页面能够执行SQL语句,那么可能会有直接通过SQL语句写入webshell的风险,常见的phpmyadmin环境下,通过几个语句可以轻松将一句话木马写入 ...

  5. (杭电 2045)不容易系列之(3)—— LELE的RPG难题

    不容易系列之(3)-- LELE的RPG难题 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Othe ...

  6. Python之文件及文件系统

    open() 方法: Python open() 方法用于打开一个文件,并返回文件对象,在对文件进行处理过程都需要使用到这个函数,如果该文件无法被打开,会抛出 OSError. 注意:使用 open( ...

  7. Linux 下 终端 相关的命令

    1. 概述 Linux 服务器, 通常可以由多个终端连接 简单介绍一些 终端 相关的操作 最终的目的, 是定位到某个终端, 然后把它 踢下来, 甚至可以不让他再次连接 2. 环境 操作系统 CentO ...

  8. Linux入门第二天——基本命令入门(中)

    一.文件搜索命令 1.文件搜索命令:locate 速度很快(具体见Linux工具网址的对比),注意无法找到新建的文件(原理暂不展开) locate命令其实是“find -name”的另一种写法,但是要 ...

  9. 20155232 2016-2017-3 《Java程序设计》第6周学习总结

    20155232 2016-2017-3 <Java程序设计>第6周学习总结 教材学习内容总结 第十章 异常处理 1.从应用程序来看,如果要将数据从源取出,可以使用输入串流. 2.如果要将 ...

  10. 20155322 《Java程序设计》课堂实践项目 数据库-3-4

    20155322 <Java程序设计>课堂实践项目 数据库-3-4 数据库-3 实践要求 参考教材代码完成下面的要求,提交能连接到world的截图(有学号水印),并提交代码的码云链接.查询 ...