]> git.saurik.com Git - redis.git/commitdiff
Client creation time in redisClient structure. New age field in CLIENT LIST output.
authorantirez <antirez@gmail.com>
Tue, 13 Mar 2012 12:05:08 +0000 (13:05 +0100)
committerantirez <antirez@gmail.com>
Tue, 13 Mar 2012 17:08:47 +0000 (18:08 +0100)
src/networking.c
src/redis.h

index 14c5dcce6248233afbf52185c832c18be650dc47..b0f4505446f6e6a29e70f41ea35f0e909885c7eb 100644 (file)
@@ -51,7 +51,7 @@ redisClient *createClient(int fd) {
     c->bulklen = -1;
     c->sentlen = 0;
     c->flags = 0;
-    c->lastinteraction = time(NULL);
+    c->ctime = c->lastinteraction = time(NULL);
     c->authenticated = 0;
     c->replstate = REDIS_REPL_NONE;
     c->reply = listCreate();
@@ -1111,8 +1111,9 @@ sds getClientInfoString(redisClient *client) {
     if (emask & AE_WRITABLE) *p++ = 'w';
     *p = '\0';
     return sdscatprintf(sdsempty(),
-        "addr=%s:%d fd=%d idle=%ld flags=%s db=%d sub=%d psub=%d qbuf=%lu obl=%lu oll=%lu omem=%lu events=%s cmd=%s",
+        "addr=%s:%d fd=%d age=%ld idle=%ld flags=%s db=%d sub=%d psub=%d qbuf=%lu obl=%lu oll=%lu omem=%lu events=%s cmd=%s",
         ip,port,client->fd,
+        (long)(now - client->ctime),
         (long)(now - client->lastinteraction),
         flags,
         client->db->id,
index e47a41a4c7c51696fa9efea4ff9bb68c642a6826..28649f6d638b8482d79ea8ad50dd4792158de648 100644 (file)
@@ -332,6 +332,7 @@ typedef struct redisClient {
     list *reply;
     unsigned long reply_bytes; /* Tot bytes of objects in reply list */
     int sentlen;
+    time_t ctime;           /* Client creation time */
     time_t lastinteraction; /* time of the last interaction, used for timeout */
     time_t obuf_soft_limit_reached_time;
     int flags;              /* REDIS_SLAVE | REDIS_MONITOR | REDIS_MULTI ... */