Beispiel #1
0
 public function replication()
 {
     !empty($_GET["application"]) && $this->db->where("application", $_GET["application"]);
     !empty($_GET["server_id"]) && $this->db->where("server_id", $_GET["server_id"]);
     if (!empty($_GET["role"])) {
         $this->db->where($_GET["role"], 1);
     }
     !empty($_GET["delay"]) && $this->db->where("delay >", (int) $_GET["delay"]);
     if (!empty($_GET["order"]) && !empty($_GET["order_type"])) {
         $this->db->order_by($_GET["order"], $_GET["order_type"]);
     }
     $datalist = $this->mysql->get_total_record('mysql_replication');
     if (empty($_GET["search"])) {
         $datalist = get_replication_tree($datalist);
     }
     //print_r($result);exit;
     $setval["application"] = isset($_GET["application"]) ? $_GET["application"] : "";
     $setval["server_id"] = isset($_GET["server_id"]) ? $_GET["server_id"] : "";
     $setval["role"] = isset($_GET["role"]) ? $_GET["role"] : "";
     $setval["delay"] = isset($_GET["delay"]) ? $_GET["delay"] : "";
     $setval["order"] = isset($_GET["order"]) ? $_GET["order"] : "";
     $setval["order_type"] = isset($_GET["order_type"]) ? $_GET["order_type"] : "";
     $data["setval"] = $setval;
     $data["server"] = $this->server->get_total_record_usage();
     $data["application"] = $this->app->get_total_record_usage();
     $data['datalist'] = $datalist;
     $data["cur_nav"] = "mysql_replication";
     $this->layout->view("mysql/replication", $data);
 }
Beispiel #2
0
function get_replication_tree($array, $host = '---', $port = '---', $level = 0)
{
    $repeat = '     ';
    $str_repeat = '';
    if ($level) {
        for ($j = 0; $j < $level; $j++) {
            $str_repeat .= $repeat;
        }
    }
    if ($level == 0) {
        $icon = "<i class='icon-list'></i>";
    } else {
        $icon = "<i class='icon-refresh'></i>";
    }
    $str_repeat = $str_repeat . $icon;
    $newarray = array();
    $temparray = array();
    foreach ((array) $array as $v) {
        if ($v['master_server'] == $host and $v['master_port'] == $port) {
            $host_v = $v['host'];
            $port_v = $v['port'];
            $v['host'] = $str_repeat . $v['host'];
            $v['level'] = $level;
            $newarray[] = $v;
            $temparray = get_replication_tree($array, $host_v, $port_v, $level + 1);
            if ($temparray) {
                $newarray = array_merge($newarray, $temparray);
            }
        }
    }
    return $newarray;
}
Beispiel #3
0
 public function replication()
 {
     $datalist = $this->monitor->get_total_record_replication();
     if (empty($_GET["search"])) {
         $datalist = get_replication_tree($datalist);
     }
     $setval["application_id"] = isset($_GET["application_id"]) ? $_GET["application_id"] : "";
     $setval["server_id"] = isset($_GET["server_id"]) ? $_GET["server_id"] : "";
     $setval["role"] = isset($_GET["role"]) ? $_GET["role"] : "";
     $setval["delay"] = isset($_GET["delay"]) ? $_GET["delay"] : "";
     $setval["order"] = isset($_GET["order"]) ? $_GET["order"] : "";
     $setval["order_type"] = isset($_GET["order_type"]) ? $_GET["order_type"] : "";
     $data["setval"] = $setval;
     $data["server"] = $this->server->get_total_record_usage();
     $data["application"] = $this->app->get_total_record_usage();
     $data['datalist'] = $datalist;
     $data["cur_nav"] = "monitor_replication";
     $this->layout->view("monitor/replication", $data);
 }
Beispiel #4
0
 public function replication()
 {
     parent::check_privilege();
     $datalist = $this->mysql->get_replication_total_record();
     if (empty($_GET["search"])) {
         $datalist = get_replication_tree($datalist);
     }
     $setval["role"] = isset($_GET["role"]) ? $_GET["role"] : "";
     $setval["delay"] = isset($_GET["delay"]) ? $_GET["delay"] : "";
     $setval["order"] = isset($_GET["order"]) ? $_GET["order"] : "";
     $setval["order_type"] = isset($_GET["order_type"]) ? $_GET["order_type"] : "";
     $data["setval"] = $setval;
     $data['datalist'] = $datalist;
     $data["cur_nav"] = "mysql_replication";
     $this->layout->view("mysql/replication", $data);
 }
Beispiel #5
0
 public function redis_replication()
 {
     $setval["application_id"] = isset($_GET["application_id"]) ? $_GET["application_id"] : "";
     $setval["server_id"] = isset($_GET["server_id"]) ? $_GET["server_id"] : "";
     $setval["role"] = isset($_GET["role"]) ? $_GET["role"] : "";
     //$setval["delay"]=isset($_GET["delay"]) ? $_GET["delay"] : "";
     //$setval["order"]=isset($_GET["order"]) ? $_GET["order"] : "";
     //$setval["order_type"]=isset($_GET["order_type"]) ? $_GET["order_type"] : "";
     if ($setval["application_id"] == "") {
         $current_url = 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] . '?noparam=1';
         //$current_url= site_url('monitor/redis_replication?application_id='.$setval["application_id"]."&server_id=".$setval["server_id"]."&role=".$setval["role"]);
         $this->load->library('pagination');
         $config['base_url'] = $current_url;
         $config['total_rows'] = $this->monitor->get_total_rows('redis_replication');
         //$config['total_rows'] = $this->monitor->get_total_replication_rows('redis_replication',$setval["application_id"],$setval["server_id"],$setval["role"]);
         $config['per_page'] = 30;
         $config['num_links'] = 5;
         $config['page_query_string'] = TRUE;
         $config['use_page_numbers'] = TRUE;
         $this->pagination->initialize($config);
         $offset = !empty($_GET['per_page']) ? $_GET['per_page'] : 1;
         $datalist = $this->monitor->get_total_record_paging_replication($config['per_page'], ($offset - 1) * $config['per_page']);
     } else {
         $current_url = site_url('monitor/redis_replication?application_id=' . $setval["application_id"] . "&server_id=" . $setval["server_id"] . "&role=" . $setval["role"]);
         $this->load->library('pagination');
         $config['base_url'] = $current_url;
         $config['total_rows'] = $this->monitor->get_total_replication_rows('redis_replication', $setval["application_id"], $setval["server_id"], $setval["role"]);
         $config['per_page'] = 300;
         $config['num_links'] = 5;
         $config['page_query_string'] = TRUE;
         $config['use_page_numbers'] = TRUE;
         $this->pagination->initialize($config);
         $offset = !empty($_GET['per_page']) ? $_GET['per_page'] : 1;
         //$datalist=$this->monitor->get_total_record_paging_replication($config['per_page'],($offset-1)*$config['per_page']);
         $datalist = $this->monitor->get_total_record_replication();
     }
     //file_put_contents('/tmp/debug.log',serialize($datalist),FILE_APPEND);
     $tmp_server_id = isset($_GET["server_id"]) ? $_GET["server_id"] : "";
     $tmp_role = isset($_GET["role"]) ? $_GET["role"] : "";
     if ($tmp_server_id == "" && $tmp_role != "is_slave") {
         //if(empty($_GET["search"])){
         $datalist = get_replication_tree($datalist);
         //file_put_contents('/tmp/debug.log',serialize($datalist),FILE_APPEND);
         //}
     }
     $data["setval"] = $setval;
     //$data["server"]=$this->server->get_total_record_usage();
     if (isset($_GET["application_id"])) {
         $data["server"] = $this->server->get_record_usage_by_application($_GET["application_id"]);
     } else {
         $data["server"] = $this->server->get_total_record_usage();
     }
     $data["application"] = $this->app->get_total_record_usage();
     $data['datalist'] = $datalist;
     $data["cur_nav"] = "monitor_replication";
     $this->layout->view("monitor/redis_replication", $data);
 }