備忘録。
トラブったので・・・
経緯
会社で使っているリソース監視ツールであるCacti。
主にサーバのリソースやトラフィックなんかを視認するのに利用していたのですが、
2020年の9月13日 21時30分ごろからグラフの表示が絞り込みできない状態になりました。
環境
Cacti 0.8.8
原因
結果から申しますと、Cactiの検索範囲の値について、引数制限がかかっていたのが原因です。
Cactiの以下のPHPファイルにUNIX_TIMEの制限がかかっていました。
cat graph_image.php
/* override: graph start time (unix time) */
if (!empty($_GET["graph_start"]) && $_GET["graph_start"] < 1600000000) {
$graph_data_array["graph_start"] = $_GET["graph_start"];
}
/* override: graph end time (unix time) */
if (!empty($_GET["graph_end"]) && $_GET["graph_end"] < 1600000000) {
$graph_data_array["graph_end"] = $_GET["graph_end"];
}
cat graph_xport.php
/* override: graph start time (unix time) */
if (!empty($_GET["graph_start"]) && $_GET["graph_start"] < 1600000000) {
$graph_data_array["graph_start"] = $_GET["graph_start"];
}
/* override: graph end time (unix time) */
if (!empty($_GET["graph_end"]) && $_GET["graph_end"] < 1600000000) {
$graph_data_array["graph_end"] = $_GET["graph_end"];
}
UNIX_TIMEの1600000000は2020-09-13 21:26:40です。
なので、ここの制限を超えてグラフの時間指定をしようとすると、if文に引っ掛からず値を代入できていなかったのですね。
なので、この値を書き換えてあげると直ります。
今回は1800000000 に書き換えてあげました。
流石に2027年までにはCactiも更改されていることでしょう・・・・・
バグレポート
Gitにありました・・
Timestamp BUG · Issue #3798 · Cacti/cacti
Describe the bug Timestamp Greater than or equal to 1600000000 cann't zoom for graph and graph_export Cacti Version | 0....
コメント
情報有難う御座います。大変助かりました。
非常に助かりました!!!ありがとうございます!!!
情報ありがとうございます。
悩んでおりましたが、やっと解決できました。
非常に参考になりました。ありがとうございます。
こちらで試した結果を情報共有いたします。
環境はcacti Version 1.2.3
graph_image.php
graph_xport.php
だけでは改善せず、
graph_json.php
の数値も直してOKとなりました。