cacti不能实时刷新流量图_cacti关于流量图时间选择失效的bug
  JRqGwh9Av6bM 2023年11月02日 27 0

事故详情

2020年9月13日晚,Cacti时间过滤器出现BUG,致全球Cacti用户受影响,具体故障现象为 选择时间过滤后没效果,最近时间也无效,点击没反应,经过Github官方反馈得知,由于时间戳设置的问题,导致图形过滤器出现故障。

存在BUG的版本:

=0.8.7<1.2.10

0.8.7至1.2.10所有版本,均会出现此故障

不受影响的版本:

=1.2.10后所有版本,<0.8.7前所有版本

问题分析

Cacti从0.8.7版本开始,也就是说在2007年(13年前)设置了时间戳的值为1600000000,转换成时间为2020-09-13 20:26:40,表示在2020年9月13日20点26分40秒后,选择过滤图形时间会导致失效,图形过滤器出现BUG。

3.修复方法

0.8.7版本至1.0.0版本修复方法如下:

修改当前web根目录下的graph_xport.php和graph_image.php两个文件,查找1600000000,每个文件中会有两个这个值,将其全部改成2088385563,修改后无需重启任何服务,直接刷新当前浏览器即可!

if (!empty($_GET["graph_start"]) && $_GET["graph_start"] < 1600000000) {

$graph_data_array["graph_start"] = $_GET["graph_start"];

}

if (!empty($_GET["graph_end"]) && $_GET["graph_end"] < 1600000000) {

$graph_data_array["graph_end"] = $_GET["graph_end"];

}

1.0.0版本至1.2.10版本修复方法如下:

修改当前web根目录下的graph_image.php、graph_json.php、graph_xport.php、remote_agent.php这四个文件,查找1600000000,将其全部改成2088385563,修改后无需重启任何服务,直接刷新当前浏览器即可!

if (!isempty_request_var('graph_start') && get_request_var('graph_start') < 1600000000) {

$graph_data_array['graph_start'] = get_request_var('graph_start');

}

if (!isempty_request_var('graph_end') && get_request_var('graph_end') < 1600000000) {

$graph_data_array['graph_end'] = get_request_var('graph_end');

}

为什么要改成2088385563?

其实此BUG,官方在1.2.10版本时已经修复了,因为时间没到,一直没触发BUG。

官方在1.2.10版本中将1600000000改成了FILTER_VALIDATE_MAX_DATE_AS_INT变量,此变量定义的值是2088385563,也就是说在2036-03-06 11:06:03后,还会出现时间戳故障。

所以说这个2088385563值不是固定的,你也可以改成2600000000,不过我相信2088385563这个值已经够用了,我们可以来预测一下2036年Cacti还会更新么?

注释:本文转载至吴昊博客 ———————————————— 版权声明:本文为CSDN博主「weixin_39746652」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/weixin_39746652/article/details/111954379

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
  Yoru5qB4TSKM   2023年12月10日   39   0   0 服务器重启IP