Redis 设计与实现(第二版)第四部分:独立功能的实现慢查询日志慢查询日志的阅览和删除
上一篇:慢查询记录的保存 下一篇:添加新日志

慢查询日志的阅览和删除

慢查询日志的阅览和删除

弄清楚了服务器状态的 slowlog 链表的作用之后, 我们可以用以下伪代码来定义查看日志的 SLOWLOG GET 命令:

def SLOWLOG_GET(number=None):
    # 用户没有给定 number 参数
    # 那么打印服务器包含的全部慢查询日志
    if number is None:
        number = SLOWLOG_LEN()
    # 遍历服务器中的慢查询日志
    for log in redisServer.slowlog:
        if number <= 0:
            # 打印的日志数量已经足够,跳出循环
            break
        else:
            # 继续打印,将计数器的值减一
            number -= 1
        # 打印日志
        printLog(log)

查看日志数量的 SLOWLOG LEN 命令可以用以下伪代码来定义:

def SLOWLOG_LEN():
    # slowlog 链表的长度就是慢查询日志的条目数量
    return len(redisServer.slowlog)

另外, 用于清除所有慢查询日志的 SLOWLOG RESET 命令可以用以下伪代码来定义:

def SLOWLOG_RESET():
    # 遍历服务器中的所有慢查询日志
    for log in redisServer.slowlog:
        # 删除日志
        deleteLog(log)
上一篇:慢查询记录的保存 下一篇:添加新日志