예제 #1
0
 public function info()
 {
     $server = $this->model->one(intval($this->input->get('id')));
     $redis = new \redis();
     if ($redis->connect($server->host, $server->port, 30) == false) {
         echo "Redis '{$server->host}' Connected Failed. \n";
         exit($redis->getLastError());
     }
     if ($server->password) {
         if ($redis->auth($server->password) == false) {
             echo "Redis '{$server->host}' Password Is Incorrect. \n";
             exit($redis->getLastError());
         }
     }
     $data['keyspace'] = $redis->info('keyspace');
     $data['memory'] = $redis->info('memory');
     $data['clients'] = $redis->info('clients');
     //$data['slow'] = $redis->slowLog('get',10);
     $redis->close();
     $result = $this->db('bs')->query('select * from en_server_redis_data where server_id=' . $server->id . ' order by created asc ')->result();
     $data['chart_memory_data'] = [];
     $data['chart_memory_time'] = [];
     $data['chart_connection_data'] = [];
     $data['chart_connection_time'] = [];
     foreach ($result as $rs) {
         $data['chart_memory_data'][] = round($rs->memory / 1024 / 1024, 2);
         $data['chart_memory_time'][] = date('H:i', $rs->created);
         $data['chart_connection_data'][] = intval($rs->connection);
         $data['chart_connection_time'][] = date('H:i', $rs->created);
     }
     $data['server'] = $server;
     $this->output->view('monitor/redis/server_info', $data);
 }
예제 #2
0
<?php

/* 这里替换为连接的实例host和port */
$host = "127.0.0.1";
$port = 6379;
/* 这里替换为实例id和实例password,没有则注释掉 */
/*$user = "******";
$pwd = "xxxxxxx";*/
$Redis = new redis();
//$Redis->pconnect('127.0.0.1', 6379);
if ($Redis->pconnect($host, $port) == false) {
    die($Redis->getLastError());
}
//如果没有账户密码,就注释掉
/*if ($Redis->auth($user . ":" . $pwd) == false) {
    die($Redis->getLastError());
}*/
file_put_contents('./redis.json', '');
$it = NULL;
/* Initialize our iterator to NULL */
$Redis->setOption(Redis::OPT_SCAN, Redis::SCAN_RETRY);
/* retry when we get no keys back */
while ($keys = $Redis->scan($it)) {
    $out = '';
    foreach ($keys as $key) {
        //echo $Redis->type($key),"\n";
        $arr = array();
        $type = $Redis->type($key);
        $expire = $Redis->ttl($key);
        switch ($type) {
            case $Redis::REDIS_STRING: