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); }
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; }
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); }
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); }
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); }