X-Git-Url: https://git.saurik.com/redis.git/blobdiff_plain/35a6044140deb1c70dc92c5d454745142faeeb37..f02aa7bb79ab571975d25e819dcb2a1c67b2c9c9:/src/slowlog.c diff --git a/src/slowlog.c b/src/slowlog.c index a257a17b..cfd66dc6 100644 --- a/src/slowlog.c +++ b/src/slowlog.c @@ -26,6 +26,7 @@ slowlogEntry *slowlogCreateEntry(robj **argv, int argc, long long duration) { } se->time = time(NULL); se->duration = duration; + se->id = server.slowlog_entry_id++; return se; } @@ -47,6 +48,7 @@ void slowlogFreeEntry(void *septr) { * at server startup. */ void slowlogInit(void) { server.slowlog = listCreate(); + server.slowlog_entry_id = 0; listSetFreeMethod(server.slowlog,slowlogFreeEntry); } @@ -55,7 +57,7 @@ void slowlogInit(void) { * configured max length. */ void slowlogPushEntryIfNeeded(robj **argv, int argc, long long duration) { if (server.slowlog_log_slower_than < 0) return; /* Slowlog disabled */ - if (duration > server.slowlog_log_slower_than) + if (duration >= server.slowlog_log_slower_than) listAddNodeHead(server.slowlog,slowlogCreateEntry(argv,argc,duration)); /* Remove old entries if needed. */ @@ -96,7 +98,8 @@ void slowlogCommand(redisClient *c) { int j; se = ln->value; - addReplyMultiBulkLen(c,3); + addReplyMultiBulkLen(c,4); + addReplyLongLong(c,se->id); addReplyLongLong(c,se->time); addReplyLongLong(c,se->duration); addReplyMultiBulkLen(c,se->argc);