【问题标题】:is there a way to get the client IP in redis?有没有办法在redis中获取客户端IP?
【发布时间】:2012-07-26 20:09:56
【问题描述】:

我进行了网络搜索,但没有找到任何相关信息。我在集群上运行 redis,想知道哪台机器连接到 redis(尤其是当没有机器应该连接,但 redis 仍然说有机器连接时)。

提前致谢。

【问题讨论】:

    标签: redis


    【解决方案1】:

    使用 MONITOR,只会显示实际向 Redis 发送流量的客户端。如果只需要获取已连接客户端的列表,可以使用 CLIENT LIST 命令。

    $ redis-cli client list
    

    它将返回一个表,其字段在此处描述:

    Redis "Client List" purpose and description

    【讨论】:

    • 太好了,这正是我需要的。
    【解决方案2】:

    你试过 MONITOR 命令了吗?

    http://redis.io/commands/monitor

     $ redis-cli monitor
     1339518083.107412 [0 127.0.0.1:60866] "keys" "*"
     1339518087.877697 [0 127.0.0.1:60866] "dbsize"
     1339518090.420270 [0 127.0.0.1:60866] "set" "x" "6"
     1339518096.506257 [0 127.0.0.1:60866] "get" "x"
     1339518099.363765 [0 127.0.0.1:60866] "del" "x"
     1339518100.544926 [0 127.0.0.1:60866] "get" "x"
     Use SIGINT (Ctrl-C) to stop a MONITOR stream running via redis-cli.
    
     # OR 
     $ telnet localhost 6379
     Trying 127.0.0.1...
     Connected to localhost.
     Escape character is '^]'.
     MONITOR
     +OK
     +1339518083.107412 [0 127.0.0.1:60866] "keys" "*"
     +1339518087.877697 [0 127.0.0.1:60866] "dbsize"
     +1339518090.420270 [0 127.0.0.1:60866] "set" "x" "6"
     +1339518096.506257 [0 127.0.0.1:60866] "get" "x"
     +1339518099.363765 [0 127.0.0.1:60866] "del" "x"
     +1339518100.544926 [0 127.0.0.1:60866] "get" "x"
     QUIT
     +OK
     Connection closed by foreign host.
    

    【讨论】:

      猜你喜欢
      • 2020-08-27
      • 2022-09-29
      • 2014-10-10
      • 1970-01-01
      • 1970-01-01
      • 2011-10-13
      • 2011-11-26
      • 2016-11-06
      • 1970-01-01
      相关资源
      最近更新 更多