mirror of
https://github.com/fluencelabs/redis
synced 2025-04-14 13:16:03 +00:00
last executed command in CLIENT LIST output.
This commit is contained in:
parent
3c95e7212e
commit
2c74a9f948
@ -36,7 +36,7 @@ redisClient *createClient(int fd) {
|
|||||||
c->reqtype = 0;
|
c->reqtype = 0;
|
||||||
c->argc = 0;
|
c->argc = 0;
|
||||||
c->argv = NULL;
|
c->argv = NULL;
|
||||||
c->cmd = NULL;
|
c->cmd = c->lastcmd = NULL;
|
||||||
c->multibulklen = 0;
|
c->multibulklen = 0;
|
||||||
c->bulklen = -1;
|
c->bulklen = -1;
|
||||||
c->sentlen = 0;
|
c->sentlen = 0;
|
||||||
@ -966,7 +966,7 @@ sds getClientInfoString(redisClient *client) {
|
|||||||
if (emask & AE_WRITABLE) *p++ = 'w';
|
if (emask & AE_WRITABLE) *p++ = 'w';
|
||||||
*p = '\0';
|
*p = '\0';
|
||||||
return sdscatprintf(sdsempty(),
|
return sdscatprintf(sdsempty(),
|
||||||
"addr=%s:%d fd=%d idle=%ld flags=%s db=%d sub=%d psub=%d qbuf=%lu obl=%lu oll=%lu events=%s",
|
"addr=%s:%d fd=%d idle=%ld flags=%s db=%d sub=%d psub=%d qbuf=%lu obl=%lu oll=%lu events=%s cmd=%s",
|
||||||
ip,port,client->fd,
|
ip,port,client->fd,
|
||||||
(long)(now - client->lastinteraction),
|
(long)(now - client->lastinteraction),
|
||||||
flags,
|
flags,
|
||||||
@ -976,7 +976,8 @@ sds getClientInfoString(redisClient *client) {
|
|||||||
(unsigned long) sdslen(client->querybuf),
|
(unsigned long) sdslen(client->querybuf),
|
||||||
(unsigned long) client->bufpos,
|
(unsigned long) client->bufpos,
|
||||||
(unsigned long) listLength(client->reply),
|
(unsigned long) listLength(client->reply),
|
||||||
events);
|
events,
|
||||||
|
client->lastcmd ? client->lastcmd->name : "NULL");
|
||||||
}
|
}
|
||||||
|
|
||||||
void clientCommand(redisClient *c) {
|
void clientCommand(redisClient *c) {
|
||||||
|
@ -1174,7 +1174,7 @@ int processCommand(redisClient *c) {
|
|||||||
|
|
||||||
/* Now lookup the command and check ASAP about trivial error conditions
|
/* Now lookup the command and check ASAP about trivial error conditions
|
||||||
* such as wrong arity, bad command name and so forth. */
|
* such as wrong arity, bad command name and so forth. */
|
||||||
c->cmd = lookupCommand(c->argv[0]->ptr);
|
c->cmd = c->lastcmd = lookupCommand(c->argv[0]->ptr);
|
||||||
if (!c->cmd) {
|
if (!c->cmd) {
|
||||||
addReplyErrorFormat(c,"unknown command '%s'",
|
addReplyErrorFormat(c,"unknown command '%s'",
|
||||||
(char*)c->argv[0]->ptr);
|
(char*)c->argv[0]->ptr);
|
||||||
|
@ -294,7 +294,7 @@ typedef struct redisClient {
|
|||||||
sds querybuf;
|
sds querybuf;
|
||||||
int argc;
|
int argc;
|
||||||
robj **argv;
|
robj **argv;
|
||||||
struct redisCommand *cmd;
|
struct redisCommand *cmd, *lastcmd;
|
||||||
int reqtype;
|
int reqtype;
|
||||||
int multibulklen; /* number of multi bulk arguments left to read */
|
int multibulklen; /* number of multi bulk arguments left to read */
|
||||||
long bulklen; /* length of bulk argument in multi bulk request */
|
long bulklen; /* length of bulk argument in multi bulk request */
|
||||||
|
Loading…
x
Reference in New Issue
Block a user