我似乎无法在RHEL 7上为collectd工作dbi插件。我正在尝试使用FreeTDS驱动程序连接到Microsoft SQL Server,但是collectd / dbi无法找到它。
我安装了最新的收藏:
姓名:收件人
Arch:x86_64
版本:5.5.2
发布:1.el7
尺寸:1.8 M
回购:安装
来自repo:epel
简介:用于填充RRD文件的统计信息收集守护程序
执照:GPLv2
我已经安装了collectd-dbi:
姓名:collectd-dbi
Arch:x86_64
版本:5.5.2
发布:1.el7
尺寸:32 k
回购:安装
来自repo:/collectd-dbi-5.5.2-1.el7.x86_64
摘要:收集的DBI插件
执照:GPLv2
我安装了FreeTDS:
姓名:freetds
Arch:x86_64
版本:0.95.81
发布:1.el7
尺寸:2.7 M
回购:安装
来自repo:epel
摘要:TDS(Tabular DataStream)协议的实现
许可证:LGPLv2 +和GPLv2 +
collectd在尝试加载FreeTDS时显示错误:
dbi插件:cdbi_connect_database:dbi_driver_open_r(FreeTDS)失败。
我错过了什么?任何帮助将不胜感激。
答案 0 :(得分:0)
我自己也在解决同样的问题,虽然我还没有开始工作,但我确信除了collectd,collectd-dbi和freetds之外你还需要DBD :: Sybase。我从http://search.cpan.org/CPAN/authors/id/M/ME/MEWP/DBD-Sybase-1.15.tar.gz抓住了它。
幸运的是,您将超越我所处的位置,这就是Perl说驱动程序可用,但是collectd插件无法引用它。
在perl方面看似成功:
cat ./test.pl
#!/usr/bin/perl
use DBI;
#Prints a list of the available DBD drivers.
@available_drivers = DBI->available_drivers;
print ("The available DBD drivers are: @available_drivers.\n");
$ ./test.pl
The available DBD drivers are: DBM ExampleP File Gofer Oracle Proxy Sponge Sybase mysql.
但我在收集日志中收到此错误:
[2016-09-27 14:18:09] dbi plugin: cdbi_connect_database: dbi_driver_open_r (Sybase) failed.
[2016-09-27 14:18:09] dbi plugin: Maybe the driver isn't installed? Known drivers are:
[2016-09-27 14:18:09] dbi plugin: * mysql
安装了libdbi-dbd-mysql rpm之后,mysql驱动程序变得可用,但是还没有得到它来识别Sybase驱动程序。