Module: Redis::Commands::Server
| Relationships & Source Files | |
| Extension / Inclusion / Inheritance Descendants | |
| Included In: | |
| Defined in: | lib/redis/commands/server.rb | 
Instance Method Summary
- 
    
      #bgrewriteaof  ⇒ String 
    
    Asynchronously rewrite the append-only file. 
- 
    
      #bgsave  ⇒ String 
    
    Asynchronously save the dataset to disk. 
- 
    
      #client(subcommand, *args)  ⇒ String, Hash 
    
    Manage client connections. 
- 
    
      #config(action, *args)  ⇒ String, Hash 
    
    Get or set server configuration parameters. 
- 
    
      #dbsize  ⇒ Integer 
    
    Return the number of keys in the selected database. 
- #debug(*args)
- 
    
      #flushall(options = nil)  ⇒ String 
    
    Remove all keys from all databases. 
- 
    
      #flushdb(options = nil)  ⇒ String 
    
    Remove all keys from the current database. 
- 
    
      #info(cmd = nil)  ⇒ Hash<String, String> 
    
    Get information and statistics about the server. 
- 
    
      #lastsave  ⇒ Integer 
    
    Get the UNIX time stamp of the last successful save to disk. 
- 
    
      #monitor {|line| ... } 
    
    Listen for all requests received by the server in real time. 
- 
    
      #save  ⇒ String 
    
    Synchronously save the dataset to disk. 
- 
    
      #shutdown  
    
    Synchronously save the dataset to disk and then shut down the server. 
- 
    
      #slaveof(host, port)  
    
    Make the server a slave of another instance, or promote it as master. 
- 
    
      #slowlog(subcommand, length = nil)  ⇒ Array<String>, ... 
    
    Interact with the slowlog (get, len, reset). 
- 
    
      #sync  
    
    Internal command used for replication. 
- 
    
      #time  ⇒ Array<Integer> 
    
    Return the server time. 
Instance Method Details
    #bgrewriteaof  ⇒ String 
  
Asynchronously rewrite the append-only file.
# File 'lib/redis/commands/server.rb', line 9
def bgrewriteaof send_command([:bgrewriteaof]) end
    #bgsave  ⇒ String 
  
Asynchronously save the dataset to disk.
# File 'lib/redis/commands/server.rb', line 16
def bgsave send_command([:bgsave]) end
    #client(subcommand, *args)  ⇒ String, Hash 
  
Manage client connections.
# File 'lib/redis/commands/server.rb', line 39
def client(subcommand, *args) send_command([:client, subcommand] + args) do |reply| if subcommand.to_s == "list" reply.lines.map do |line| entries = line.chomp.split(/[ =]/) Hash[entries.each_slice(2).to_a] end else reply end end end
    #config(action, *args)  ⇒ String, Hash 
  
Get or set server configuration parameters.
# File 'lib/redis/commands/server.rb', line 25
def config(action, *args) send_command([:config, action] + args) do |reply| if reply.is_a?(Array) && action == :get Hashify.call(reply) else reply end end end
    #dbsize  ⇒ Integer 
  
Return the number of keys in the selected database.
# File 'lib/redis/commands/server.rb', line 55
def dbsize send_command([:dbsize]) end
#debug(*args)
[ GitHub ]# File 'lib/redis/commands/server.rb', line 183
def debug(*args) send_command([:debug] + args) end
    #flushall(options = nil)  ⇒ String 
  
Remove all keys from all databases.
# File 'lib/redis/commands/server.rb', line 64
def flushall( = nil) if && [:async] send_command(%i[flushall async]) else send_command([:flushall]) end end
    #flushdb(options = nil)  ⇒ String 
  
Remove all keys from the current database.
# File 'lib/redis/commands/server.rb', line 77
def flushdb( = nil) if && [:async] send_command(%i[flushdb async]) else send_command([:flushdb]) end end
    #info(cmd = nil)  ⇒ Hash<String, String> 
  
Get information and statistics about the server.
# File 'lib/redis/commands/server.rb', line 89
def info(cmd = nil) send_command([:info, cmd].compact) do |reply| if reply.is_a?(String) reply = HashifyInfo.call(reply) if cmd && cmd.to_s == "commandstats" # Extract nested hashes for INFO COMMANDSTATS reply = Hash[reply.map do |k, v| v = v.split(",").map { |e| e.split("=") } [k[/^cmdstat_(.*)$/, 1], Hash[v]] end] end end reply end end
    #lastsave  ⇒ Integer 
  
Get the UNIX time stamp of the last successful save to disk.
# File 'lib/redis/commands/server.rb', line 110
def lastsave send_command([:lastsave]) end
#monitor {|line| ... }
Listen for all requests received by the server in real time.
There is no way to interrupt this command.
    #save  ⇒ String 
  
Synchronously save the dataset to disk.
# File 'lib/redis/commands/server.rb', line 133
def save send_command([:save]) end
#shutdown
Synchronously save the dataset to disk and then shut down the server.
# File 'lib/redis/commands/server.rb', line 138
def shutdown synchronize do |client| client.disable_reconnection do client.call_v([:shutdown]) rescue ConnectionError # This means Redis has probably exited. nil end end end
#slaveof(host, port)
Make the server a slave of another instance, or promote it as master.
# File 'lib/redis/commands/server.rb', line 150
def slaveof(host, port) send_command([:slaveof, host, port]) end
    #slowlog(subcommand, length = nil)  ⇒ Array<String>, ... 
  
Interact with the slowlog (get, len, reset)
# File 'lib/redis/commands/server.rb', line 159
def slowlog(subcommand, length = nil) args = [:slowlog, subcommand] args << Integer(length) if length send_command(args) end
#sync
Internal command used for replication.
# File 'lib/redis/commands/server.rb', line 166
def sync send_command([:sync]) end
    #time  ⇒ Array<Integer> 
  
Return the server time.
# File 'lib/redis/commands/server.rb', line 177
def time send_command([:time]) do |reply| reply&.map(&:to_i) end end