博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
分布式日志收集系统scribe介绍
阅读量:6641 次
发布时间:2019-06-25

本文共 879 字,大约阅读时间需要 2 分钟。

Scribe是facebook开源的日志收集系统,在facebook内部已经得到大量的应用。 Scribe是基于一个使用非阻断C++服务器的thrift服务的实现。它能够从各种日志源上收集日志,存储到一个中央存储系统 (可以是NFS,分布式文件系统等)上,以便于进行集中统计分析处理。它为日志的“分布式收集,统一处理”提供了一个可扩展的,高容错的方案。

一、Scribe的系统架构


如上图所示:Scribe从各种数据源上收集数据,放到一个共享队列上,然后push到后端的中央存储系统上。当中央存储系统出现故障时,scribe可以暂时把日志写到本地文件中,待中央存储系统恢复性能后,scribe把本地日志续传到中央存储系统上。

二、Scribe的技术架构

如上图所示:Scribe服务器底层数据通信框架是ThriftThrift也是Facebook开源的,并得到了广泛的使用。也用到了C++的准标准库boost,主要使用共享指针和文件相关的功能。Thrift也用到了libevent开发库和socket编程技术。

三、Scribe部署结构

这是最简单的Scribe部署结构,根据具体的应用环境,可以实现分层结构,比较常见的是2层结构,也就是Scribe1和Scribe2,日志首先传输到Scribe1,然后再次提交到Scribe2,此外,Scribe2可以有多台构成,这种构架可以实现灵活部署以及热备功能。

四、Scribe的主要功能

1.支持多种存储类型:7种并且可扩展

2.日志自动切分功能:按文件大小和时间切分

3.灵活的客户端:

1)支持多种常用语言(Thrift提供支持);

2)可与应用系统集成;可以作实现独立客户端

4.支持日志分类功能(Facebook有上百种日志分类)

5.其他功能

1)连接池

2)灵活的日志缓存大小

3)多线程功能(消息队列)

4scribe服务器之间可以转发日志

本文转自南非蚂蚁51CTO博客,原文链接:http://blog.51cto.com/ixdba/1368760 ,如需转载请自行联系原作者

你可能感兴趣的文章
using eclipse to write c programe 0
查看>>
记录一下收集到的clojure相关的东东
查看>>
《Linux内核原理与分析》第七周作业
查看>>
浅析Xilinx 三速以太网MAC IP核(仿真篇)
查看>>
(转)Fidder教程
查看>>
UNREFERENCE_PARAMETER
查看>>
Linux -RAID
查看>>
OC中Foundation框架
查看>>
UIImageView
查看>>
spring boot&&cloud干货系列
查看>>
2012-06-25 基本调整数据库结构方法
查看>>
用Markdown格式写一份前端简历
查看>>
第二次作业
查看>>
Windows API编程(一)完整的示范程序
查看>>
JAVA EE:第一个例子(登录)
查看>>
前端Js框架汇总
查看>>
LINUX 配置IP
查看>>
常用的CSS3 -webkit-前缀
查看>>
oo第四次博客作业
查看>>
获取JSON格式的字符串各个属性对应的值
查看>>