【Cacti】グラフの時間絞り込み表示が2020年9月13日からおかしくなる問題

Linux
スポンサーリンク

 

備忘録。

トラブったので・・・

 

スポンサーリンク

経緯

会社で使っているリソース監視ツールである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.8.8a Cacti OS | unix SNMP Version | NET-...

 

Youtubeチャンネル作成しました!

主にFPSゲームのプレイ動画を投稿しております
良ければ登録よろしくお願いいたします
Linux
スポンサーリンク
vatchをフォローする
ばちブロ

コメント

  1. nanashi より:

    情報有難う御座います。大変助かりました。

  2. テツ より:

    非常に助かりました!!!ありがとうございます!!!

  3. あちゃよし より:

    情報ありがとうございます。
    悩んでおりましたが、やっと解決できました。

  4. こば より:

    非常に参考になりました。ありがとうございます。
    こちらで試した結果を情報共有いたします。
    環境はcacti Version 1.2.3
    graph_image.php
    graph_xport.php
    だけでは改善せず、
    graph_json.php
    の数値も直してOKとなりました。

タイトルとURLをコピーしました