collectd mysql_Collectd+mogodb plugin 源码 安装

cd mongo-c-driver

git checkout secondary

make && make install

cd collectd

修改Collectd得文件

src/curl.cif (wp->response_time)start = cdtime ();+ else+ start = cdtime ();src/write_mongodb.c

- status = mongo_connect (node->conn, node->host, node->port);+ status = mongo_connect (node->conn, node->host, node->port, MONGO_SECONDARY_OK);

yum install libgcrypt.x86_64 libgcrypt-devel.x86_64

yum install libtool-ltdl-devel.x86_64

yum install libvirt-devel.x86_64

yum install libmongodb.x86_64

yum install perl-devel.x86_64

librabbitmq-devel.x86_64

yum install perl-ExtUtils-Embed.noarch : libperl

libmemcached-devel.x86_64

yum install rrdtool-devel.x86_64

libcurl-devel.x86_64

编译collectd

build.sh

./configure --with-libmongoc=/usr/local/lib/libmongoc.so --enable-write_mongodb --prefix=/usr/local/etc/collectd

没有问题后

make && make install

启动mongodb

启动collectd

修改collectd.conf 文件, 启用write_mongodb plugin,#  注释得表示该插件尚未启用, ##表示插件未满足安装条件

将对应项进行修改。

启动出错

ERROR: lt_dlopen ("/opt/collectd/lib/collectd/write_mongodb.so") failed: file not found.

The most common cause for this problem are missing dependencies.

Use ldd(1) to check the dependencies of the plugin / shared object.

ldd /usr/local/etc/collectd/lib/collectd/write_mongodb.so

linux-vdso.so.1 => (0x00007fffa3ffe000)

libmongoc.so.0.6 => not found

libdl.so.2 => /lib64/libdl.so.2 (0x00007f1134fe8000)

libc.so.6 => /lib64/libc.so.6 (0x00007f1134c2f000)

/lib64/ld-linux-x86-64.so.2 (0x00007f1135614000)解决方法将libmongoc.so.0.6考至/lib64中

启动collectd,成功!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
flume是一个分布式、可靠、高可用的数据采集、聚合和传输系统。在数据采集方面,flume可以很好地与nginx、kafka、mongodb等常见的数据处理工具和数据库进行集成。下面介绍一下基于nginx+flume+kafka+mongodb实现埋点数据采集的步骤: 1. 配置nginx服务器,将所有的http请求都转发到flume服务器上。可以使用nginx的proxy_pass指令来实现。 2. 在flume服务器上,配置flume agent来接收nginx服务器转发过来的http请求,并将请求数据转发给kafka服务器。flume的配置文件中需要设置source、channel和sink三个部分,具体配置可以参考flume官方文档。 3. 在kafka服务器上,创建一个topic来存储flume发送过来的http请求数据。可以使用kafka的命令行工具kafka-topics来创建topic。 4. 在flume服务器上,配置一个kafka sink来将http请求数据发送到kafka服务器上的指定topic中。 5. 在mongodb数据库中创建一个collection来存储http请求数据。可以使用mongodb的命令行工具mongo来创建collection。 6. 在flume服务器上,配置一个mongodb sink来将http请求数据从kafka服务器中消费,并将其存储到mongodb数据库中的指定collection中。 7. 启动nginx、flume、kafka和mongodb服务,并进行测试。可以使用curl等工具模拟http请求,并查看数据是否能够被成功采集、存储到mongodb中。 以上就是基于nginx+flume+kafka+mongodb实现埋点数据采集的基本步骤。需要注意的是,具体的配置和实现过程可能会因为不同的业务需求而有所差异。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值