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. Struts2速记手册

    工作原理 Action类 Action类 普通Action类 私有属性及getter.setter(处理请求参数) execute()方法(处理请求)   实现Action接口 提供常量   继承Ac ...

  2. HTML5之拖拽

    HTML5拖放 拖放(Drag和drop)是H5标准的组成部分 此处需具备js基础知识及其H5拖拽部分相关方法 在拖动目标上触发事件 (源元素): ondragstart - 用户开始拖动元素时触发 ...

  3. docker入门——安装(CentOS)、镜像、容器

    Docker简介 什么是docker 官方解释: Docker is the company driving the container movement and the only container ...

  4. KKT原理以及SVM数学的理论推导分析

    一直很好奇机器学习实战中的SVM优化部分的数学运算式是如何得出的,如何转化成了含有内积的运算式,今天上了一节课有了让我很深的启发,也明白了数学表达式推导的全过程. 对于一个SVM问题,优化的关键在于 ...

  5. git向码云上提交项目

    git向码云上提交项目 设置账号名字和邮箱 $ git config --global user.name "注册时账号的名字" $ git config --global use ...

  6. Typescript函数

    编程都是需要函数的,因为有了函数就能复用很多东西了.不仅仅能够复用代码,还能保持代码的简洁性和提高编程的逻辑性. 在原生的JavaScript中,函数的定义有三种, function foo() {} ...

  7. PhpStorm2016.2版本 安装与破解

    1.PhpStorm2016简介以及下载地址 1.1.PhpStorm介绍    PhpStorm是一个轻量级且便捷的PHP IDE,其旨在提高用户效率,可深刻理解用户的编码,提供智能代码补全 快速导 ...

  8. 20155321 2016-2017-2《Java程序设计》课堂实践项目2

    20155321 2016-2017-2<Java程序设计>课堂实践项目2 实践内容 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支持两个参数: ...

  9. 图解Oracle下建立tnsname

    第一步:运行netca: 第二步: 第三步: 第四步: 第五步: 第六步: 如果前面设置都正确,测试的结果将正常(前提是Database的listener要开启).

  10. equals和==方法比较(二)--Long中equals源码分析

    接上篇,分析equals方法在Long包装类中的重写,其他类及我们自定义的类,同样可以根据需要重新equals方法. equals方法定义 equals方法是Object类中的方法,java中所有的对 ...