Example #1
0
    if ($farminfo["status"] != FARM_STATUS::RUNNING) {
        $result = array("success" => false, "msg" => _("Statistics not available for terminated farm"));
    } else {
        if ($farminfo['clientid'] != 0) {
            define("SCALR_SERVER_TZ", date("T"));
            $env = Scalr_Model::init(Scalr_Model::ENVIRONMENT)->loadById($farminfo['env_id']);
            $tz = $env->getPlatformConfigValue(ENVIRONMENT_SETTINGS::TIMEZONE);
            if ($tz) {
                date_default_timezone_set($tz);
            }
        }
        $graph_info = GetGraphicInfo($graph_type);
        $image_path = APPPATH . "/cache/stats/{$farmid}/{$role_name}.{$watchername}.{$graph_type}.gif";
        $farm_rrddb_dir = CONFIG::$RRD_DB_DIR . "/{$farminfo['id']}";
        $rrddbpath = "{$farm_rrddb_dir}/{$role_name}/{$watchername}/db.rrd";
        CONFIG::$RRD_GRAPH_STORAGE_TYPE = RRD_STORAGE_TYPE::LOCAL_FS;
        if (file_exists($rrddbpath)) {
            try {
                GenerateGraph($farmid, $role_name, $rrddbpath, $watchername, $graph_type, $image_path);
                $url = str_replace(array("%fid%", "%rn%", "%wn%"), array($farmid, $role_name, $watchername), CONFIG::$RRD_STATS_URL);
                $url = "{$url}{$graph_type}.gif";
                $result = array("success" => true, "msg" => $url);
            } catch (Exception $e) {
                $result = array("success" => false, "msg" => $e->getMessage());
            }
        } else {
            $result = array("success" => false, "msg" => _("Statistics not available yet"));
        }
    }
}
print json_encode($result);