Esempio n. 1
0
                $stats[$server]['limit_maxbytes'] = $actual[$server]['limit_maxbytes'];
                $stats[$server]['curr_connections'] = $actual[$server]['curr_connections'];
                $stats[$server]['query_time'] = $actual[$server]['query_time'];
            }
        }
        # Saving new stats dump
        file_put_contents($file_path, serialize($actual));
        # Showing stats
        include 'View/LiveStats/Stats.phtml';
        break;
        # Default : No command
    # Default : No command
    default:
        # Initializing : making stats dump
        $stats = array();
        foreach ($_ini->cluster($cluster) as $name => $server) {
            $stats[$name] = Library_Command_Factory::instance('stats_api')->stats($server['hostname'], $server['port']);
        }
        # Saving first stats dump
        file_put_contents($file_path, serialize($stats));
        # Searching for connection error, adding some time to refresh rate to prevent error
        $refresh_rate = max($_ini->get('refresh_rate'), count($_ini->cluster($cluster)) * 0.25 + Library_Data_Error::count() * (0.5 + $_ini->get('connection_timeout')));
        # Showing header
        include 'View/Header.phtml';
        # Showing live stats frame
        include 'View/LiveStats/Frame.phtml';
        # include 'View/LiveStats/Graphic.phtml';
        # Showing footer
        include 'View/Footer.phtml';
        break;
}
Esempio n. 2
0
                $data = array();
                $data['stats'] = Library_Command_Factory::instance('stats_api')->stats($server['hostname'], $server['port']);
                $data['slabs'] = Library_Analysis::slabs(Library_Command_Factory::instance('slabs_api')->slabs($server['hostname'], $server['port']));
                $stats = Library_Analysis::merge($stats, $data['stats']);
                # Computing stats
                if (isset($data['slabs']['total_malloced'], $data['slabs']['total_wasted'])) {
                    $slabs['total_malloced'] += $data['slabs']['total_malloced'];
                    $slabs['total_wasted'] += $data['slabs']['total_wasted'];
                }
                $status[$server['hostname'] . ':' . $server['port']] = $data['stats'] != array() ? $data['stats']['version'] : '';
                $uptime[$server['hostname'] . ':' . $server['port']] = $data['stats'] != array() ? $data['stats']['uptime'] : '';
            }
        } elseif (isset($_GET['server']) && ($server = $_ini->server($_GET['server']))) {
            # Getting Stats & Slabs stats
            $stats = Library_Command_Factory::instance('stats_api')->stats($server['hostname'], $server['port']);
            $slabs = Library_Analysis::slabs(Library_Command_Factory::instance('slabs_api')->slabs($server['hostname'], $server['port']));
            $settings = Library_Command_Factory::instance('stats_api')->settings($server['hostname'], $server['port']);
        }
        # Stats are well formed
        if ($stats !== false && $stats != array()) {
            # Analysis
            $stats = Library_Analysis::stats($stats);
            include 'View/Stats/Stats.tpl';
        } else {
            include 'View/Stats/Error.tpl';
        }
        unset($stats);
        break;
}
# Showing footer
include 'View/Footer.tpl';
Esempio n. 3
0
        # Ask for a telnet command on a cluster
        if (isset($_GET['request_server']) && ($cluster = $_ini->cluster($_GET['request_server']))) {
            foreach ($cluster as $server) {
                # Dumping server telnet command response
                echo Library_HTML_Components::serverResponse($server['hostname'], $server['port'], Library_Command_Factory::api('Server')->telnet($server['hostname'], $server['port'], $_GET['request_telnet']));
            }
        } elseif (isset($_GET['request_server']) && ($server = $_ini->server($_GET['request_server']))) {
            # Dumping server telnet command response
            echo Library_HTML_Components::serverResponse($server['hostname'], $server['port'], Library_Command_Factory::api('Server')->telnet($server['hostname'], $server['port'], $_GET['request_telnet']));
        } else {
            # Looking into each cluster
            foreach ($_ini->get('servers') as $cluster => $servers) {
                # Asking for each server stats
                foreach ($servers as $server) {
                    # Dumping server telnet command response
                    echo Library_HTML_Components::serverResponse($server['hostname'], $server['port'], Library_Command_Factory::api('Server')->telnet($server['hostname'], $server['port'], $_GET['request_telnet']));
                }
            }
        }
        break;
        # Default : No command
    # Default : No command
    default:
        # Showing header
        include 'View/Header.phtml';
        # Showing formulary
        include 'View/Commands/Commands.phtml';
        # Showing footer
        include 'View/Footer.phtml';
        break;
}