`

cacti添加device时出现相关的ping错误

阅读更多

Cacti在添加设备(device),如果选择ping方式获取数据,将会出现如下错误

 

 

 

Strict standards: Only variables should be passed by reference in /var/www/cacti-0.8.8b/lib/ping.php on line 471

 


错误发生的行数依版本而定,重要的不是错误发生在哪一行,而是修改错误。修改方法如下:

打开ping.php文件,找到相应的错误行,找到的内容应该如下所示

//...	
switch(socket_select($r = array($this->socket), $w = array($this->socket), $f = array($this->socket), $to_sec, $to_usec)){
//...

 错误就在这里了,php说只支持变量,不支持表达式。那我们就改成它支持的模式好了,注释这行代码,添加同等功能的代码,修改后的代码如下:

//...befro script
$r = array($this->socket);
$w = array($this->socket);
$f = array($this->socket);
switch(socket_select($r, $w, $f, $to_sec, $to_usec)){
//switch(socket_select($r = array($this->socket), $w = array($this->socket), $f = array($this->socket), $to_sec, $to_usec)){
//... other script

 重新"save"添加;device的页面,错误消失!

 

 

注:

Cacti 在英文中的意思是仙人掌的意思,Cacti是一套基于PHP,MySQL,SNMP及RRDTool开发的网络流量监测图形分析工具。它通过snmpget来获取数据,使用 RRDtool绘画图形,而且你完全可以不需要了解RRDtool复杂的参数。它提供了非常强大的数据和用户管理功能,可以指定每一个用户能查看树状结 构、host以及任何一张图,还可以与LDAP结合进行用户验证,同时也能自己增加模板,功能非常强大完善。

 

0
0
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics