IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

分布式日志系统scribe使用手记

五四陈科学院-坚信科学,分享技术 2011-02-23 22:15:41 累计浏览 8,958 次
本机暂存

     scribe 是facebook 开源的分布式日志系统 。其使用了thrift传输log,由于使用thrift,所以不论是什么语言的项目都可以实现日志收集,可达到远程或者是本地同步远程的分布式日志收集效果,在其示例配置中,并发量可达到max_msg_per_second=2000000,对普通的应用来说,每秒上百万的访问量可能性很小,因此基本上即使最简单的配置,远程收集所有项目的log也是可靠的,如果压力大的话,可以采取主从的配置,将日志打到本地后由scribe的主从配置来自动同步。下面讲述如何安装和使用scribe。

    下载boost、thrift、scribe

    boost_1_45_0.tar.gz

     thrift-0.5.0.tar.gz

     facebook-scribe-2ee14d3.zip

    通过yum安装需要的依赖

    yum install libevent libevent-devel python-devel

     yum install gcc-c++

     yum install automake

     yum install byacc flex

    安装boost

    tar -zxvf boost_1_45_0.tar.gz

     cd boost_1_45_0

     ./bootstrap.sh

     ./bjam install -prefix=/opt/soft/bootstrap

    安装thrift-0.5.0

    tar zxvf thrift-0.5.0.tar.gz

     ./configure -with-php-config=/opt/soft/php/bin/php-config -with-boost=/opt/soft/boost/ -with-java -prefix=/opt/soft/thrift

     make

     make install

    安装fb303

    cd contrib/fb303

     ./bootstrap.sh -prefix=/opt/soft/thrift/fb303 -with-boost=/opt/soft/boost/ -with-thriftpath=/opt/soft/thrift/

     make

     make install

    安装scribe

    unzip facebook-scribe-2ee14d3.zip

     cd facebook-scribe-2ee14d3

    export BOOST_ROOT=/opt/soft/boost/

     export LD_LIBRARY_PATH=/opt/soft/thrift/lib:/usr/lib:/usr/local/lib:/opt/soft/boost/lib/

     ./bootstrap.sh -prefix=/opt/soft/scribe -with-boost=/opt/soft/boost/ -with-thriftpath=/opt/soft/thrift/

     make

     make install

    启动scribe服务

    cd facebook-scribe-2ee14d3

     cp example/exmaple1.conf /opt/soft/scribe/bin

     cd /opt/soft/scribe/bin/

     export BOOST_ROOT=/opt/soft/boost/

     export LD_LIBRARY_PATH=/opt/soft/thrift/lib:/usr/lib:/usr/local/lib:/opt/soft/boost/lib/

     ./scibed example1.conf

    生成客户端使用scribe

    先产生java的thrift代码:

     cd facebook-scribe-2ee14d3/if/

     thrift -r -I ../../thrift-0.5.0/contrib/(这里需要指到你的thrift的源码目录) -gen java scribe.thrift

    使用

    gen-java目录下有thrift的客户端,即取即用。javaeye里有一篇写配置log4j使用scribe的不错:http://www.javaeye.com/topic/800208

同分类推荐文章

  1. Go 实验特性详解 (2026-06-21 10:05:27)
  2. amd64 微架构级别对 Go 程序性能提升多少? (2026-06-21 09:38:49)
  3. Loop Engineering 实践:我把 RDMA 开发库移植到 Go 语言,花费 239 块钱 (2026-06-17 04:00:24)

查看更多 后端 文章 →

建议继续学习

  1. Linux大棚版Thrift入门教程 (累计阅读 24,476)
  2. Nginx模块开发入门 (累计阅读 11,149)
  3. 用skip list实现实时排名? (累计阅读 7,030)
  4. HBase Thrift 接口使用注意事项 (累计阅读 6,751)
  5. Facebook 的系统架构 (累计阅读 6,082)
  6. Thrift简析 (累计阅读 5,838)
  7. 用 redis 实现和保护 12306 (累计阅读 5,602)
  8. Apache Avro 与 Thrift 比较 (累计阅读 5,517)
  9. 用hadoop hive协同scribe log用户行为分析方案 (累计阅读 5,061)
  10. php实现的thrift socket server (累计阅读 4,829)