From 3c95e7212ef5f0afb12fbd102c48bf4319af2f84 Mon Sep 17 00:00:00 2001 From: antirez Date: Wed, 23 Nov 2011 18:38:12 +0100 Subject: [PATCH] new counter in INFO output: rejected_connections with number of dropped connections because of maxclients limit reached. --- src/networking.c | 1 + src/redis.c | 3 +++ src/redis.h | 1 + 3 files changed, 5 insertions(+) diff --git a/src/networking.c b/src/networking.c index 537ebaba6..c9286195c 100644 --- a/src/networking.c +++ b/src/networking.c @@ -419,6 +419,7 @@ static void acceptCommonHandler(int fd) { if (write(c->fd,err,strlen(err)) == -1) { /* Nothing to do, Just to avoid the warning... */ } + server.stat_rejected_conn++; freeClient(c); return; } diff --git a/src/redis.c b/src/redis.c index 3db2f0f4f..a4eb50809 100644 --- a/src/redis.c +++ b/src/redis.c @@ -1016,6 +1016,7 @@ void initServer() { server.stat_keyspace_hits = 0; server.stat_peak_memory = 0; server.stat_fork_time = 0; + server.stat_rejected_conn = 0; server.unixtime = time(NULL); aeCreateTimeEvent(server.el, 1, serverCron, NULL, NULL); if (server.ipfd > 0 && aeCreateFileEvent(server.el,server.ipfd,AE_READABLE, @@ -1539,6 +1540,7 @@ sds genRedisInfoString(char *section) { "# Stats\r\n" "total_connections_received:%lld\r\n" "total_commands_processed:%lld\r\n" + "rejected_connections:%lld\r\n" "expired_keys:%lld\r\n" "evicted_keys:%lld\r\n" "keyspace_hits:%lld\r\n" @@ -1548,6 +1550,7 @@ sds genRedisInfoString(char *section) { "latest_fork_usec:%lld\r\n", server.stat_numconnections, server.stat_numcommands, + server.stat_rejected_conn, server.stat_expiredkeys, server.stat_evictedkeys, server.stat_keyspace_hits, diff --git a/src/redis.h b/src/redis.h index 40d0d39ab..4a2f6e1e5 100644 --- a/src/redis.h +++ b/src/redis.h @@ -527,6 +527,7 @@ struct redisServer { long long stat_keyspace_misses; /* number of failed lookups of keys */ size_t stat_peak_memory; /* max used memory record */ long long stat_fork_time; /* time needed to perform latets fork() */ + long long stat_rejected_conn; /* clients rejected because of maxclients */ list *slowlog; long long slowlog_entry_id; long long slowlog_log_slower_than;