From e74dca73d9818b42e7ee34c0a686133813e8d3a3 Mon Sep 17 00:00:00 2001 From: antirez Date: Tue, 13 Mar 2012 13:05:08 +0100 Subject: [PATCH] Client creation time in redisClient structure. New age field in CLIENT LIST output. --- src/networking.c | 5 +++-- src/redis.h | 1 + 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/networking.c b/src/networking.c index 14c5dcce6..b0f450544 100644 --- a/src/networking.c +++ b/src/networking.c @@ -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, diff --git a/src/redis.h b/src/redis.h index 6ead029d8..1d1f572b3 100644 --- a/src/redis.h +++ b/src/redis.h @@ -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 ... */ -- GitLab