Redis中的慢日志

目录
  • Redis慢日志
  • Redis慢日志相关命令配置
  • 总结

Redis慢日志

redis慢日志是用于记录某些命令在执行时超过了预设定的时间,只要超过了一定的时间,redis就会将该条命令记录到redis-slowlog中。

查看slowlog的设置:

第一种查看redis的慢日志配置:

打开redis.conf文件进行查看和配置,如下图:

在上图中我们可以看到redis的slowlog(慢日志)的默认配置,其中有两个地方需要了解:

1. slowlog-log-slower-than: 这个配置表示执行时间,在redis执行命令时,只要有任何一条命令超过了设置的执行时间,redis就会将这条命令记录到慢日志中。

2. slowlog-max-len: 这个配置表示该日志的大小,redis的日志是一个FIFO队列,当该队列达到设定的长度大小之后,后面记录的日志会覆盖掉之前记录的日志。

第二种查看redis的慢日志配置:

使用命令 config get slowlog*,可以查看到当前redis的slowlog的配置信息:

127.0.0.1:6379> config get slowlog*
1) "slowlog-max-len"
2) "128"
3) "slowlog-log-slower-than"
4) "10"

查看rediso slowlog日志内容:

使用命令 slowlog get [n] 获取前n条慢查询日志,不指定长度获取全部。

127.0.0.1:6379> slowlog get 2
1) 1) (integer) 8
   2) (integer) 1621174057
   3) (integer) 32
   4) 1) "keys"
      2) "*"
   5) "127.0.0.1:5684"
   6) ""
2) 1) (integer) 7
   2) (integer) 1621173719
   3) (integer) 34
   4) 1) "config"
      2) "get"
      3) "slowlog*"
   5) "127.0.0.1:5684"
   6) ""

PS: redis的slowlog是记录在内存中的,所以就算是频繁触发slowlog日志,也不会对redis的性能造成影响。

Redis慢日志相关命令配置

运行期配置:重启后失效

# 慢日志配置查看(模糊查询:慢日志时间,慢日志记录条数)
config get *slowlog*

# 查看指定条数的慢日志,返回最近的指定条数
slowlog get 2

# 设置慢日志
config set slowlog-log-slower-than 10000 (单位:微妙,默认值:10000 => 10毫秒)
config set slowlog-max-len 128(默认值:保留128条慢日志)

# 重置redis慢日志
slowlog reset

# 查看符合过滤的慢日志条数
slowlog len

# 慢日志帮助
slowlog help

配置文件配置redis.conf:

slowlog-log-slower-than 10000
slowlog-max-len 128

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • 一分钟搞懂Redis的慢查询日志操作

    目录 什么是慢查询? 什么是慢查询日志? 如何获取慢查询日志? 如何获取慢查询日志的长度? 如何清理慢查询日志? 怎么配置慢查询的参数? slowlog-log-slower-than slowlog-max-len 如何进行配置 总结 什么是慢查询? 慢查询,顾名思义就是比较慢的查询,但是究竟是哪里慢呢?首先,我们了解一下Redis命令执行的整个过程: 发送命令 命令排队 命令执行 返回结果 在慢查询的定义中,统计比较慢的时间段指的是命令执行这个步骤.没有慢查询,并不表示客户端没有超时问题,有

  • redis慢查询日志的访问和管理方式

    目录 redis慢查询日志的访问和管理 (1)获取慢查询日志 (2)获取慢查询日志列表当前的长度 (3)慢查询日志重置 注意事项 Redis慢查询总结 慢查询分析 总结 redis慢查询日志的访问和管理 通过一组命令来实现对慢查询日志的访问和管理 (1)获取慢查询日志 命令:slowlog get 127.0.0.1:6379> slowlog get 1) 1) (integer) 1    2) (integer) 1513709400    3) (integer) 11    4) 1)

  • Redis慢查询日志与监视器问题

    目录 1.慢查询设置 2.慢查询定位&处理 3.监视器 4.Redis监控平台 总结 我们都知道MySQL有慢查询日志 Redis也有慢查询日志,可用于监视和优化查询 1.慢查询设置 在redis.conf中可以配置和慢查询日志相关的选项: #执行时间超过多少微秒的命令请求会被记录到日志上 0 :全记录 <0 不记录 slowlog-log-slower-than 10000 #slowlog-max-len 存储慢查询日志条数 slowlog-max-len 128 Redis使用列表存储

  • Redis中的慢日志

    目录 Redis慢日志 Redis慢日志相关命令配置 总结 Redis慢日志 redis慢日志是用于记录某些命令在执行时超过了预设定的时间,只要超过了一定的时间,redis就会将该条命令记录到redis-slowlog中. 查看slowlog的设置: 第一种查看redis的慢日志配置: 打开redis.conf文件进行查看和配置,如下图: 在上图中我们可以看到redis的slowlog(慢日志)的默认配置,其中有两个地方需要了解: 1. slowlog-log-slower-than: 这个配置

  • Redis中5种数据结构的使用场景介绍

    一.redis 数据结构使用场景 原来看过 redisbook 这本书,对 redis 的基本功能都已经熟悉了,从上周开始看 redis 的源码.目前目标是吃透 redis 的数据结构.我们都知道,在 redis 中一共有5种数据结构,那每种数据结构的使用场景都是什么呢? String--字符串 Hash--字典 List--列表 Set--集合 Sorted Set--有序集合 下面我们就来简单说明一下它们各自的使用场景: 1. String--字符串 String 数据结构是简单的 key-

  • Redis中主键失效的原理及实现机制剖析

    作为一种定期清理无效数据的重要机制,主键失效存在于大多数缓存系统中,Redis 也不例外.在 Redis 提供的诸多命令中,EXPIRE.EXPIREAT.PEXPIRE.PEXPIREAT 以及 SETEX 和 PSETEX 均可以用来设置一条 Key-Value 对的失效时间,而一条 Key-Value 对一旦被关联了失效时间就会在到期后自动删除(或者说变得无法访问更为准确).可以说,主键失效这个概念还是比较容易理解的,但是在具体实现到 Redis 中又是如何呢?最近本博主就对 Redis

  • Redis中键值过期操作示例详解

    1.过期设置 Redis 中设置过期时间主要通过以下四种方式: expire key seconds:设置 key 在 n 秒后过期: pexpire key milliseconds:设置 key 在 n 毫秒后过期: expireat key timestamp:设置 key 在某个时间戳(精确到秒)之后过期: pexpireat key millisecondsTimestamp:设置 key 在某个时间戳(精确到毫秒)之后过期: 下面分别来看以上这些命令的具体实现. 1)expire:N

  • Redis中一些最常见的面试问题总结

    前言 经过长达一周的奔波和面试,电话面试,回首今天终于成功的入职了,总共面试了大概10家公司,包括阿里,京东,IBM等等,京东技术过了,学历因为非统招就被pass了,阿里面了2次电话面试就没下文了,估计是我当时最后提问题的时候减分了吧,其他的也有一些offer,不是不想去,就是了无音讯了,眼看年关将近,也由不得我挑挑拣拣了,就直接进了我现在这家公司,主要是感觉公司人不错,薪水这方面也就没有计较太多.好了,书归正文,今天小编就大家送上我精心准备的关于Redis方面的面试题,希望可以帮到还在求职路上

  • 详解Redis的慢查询日志

    Redis慢查询日志帮助开发和运维人员定位系统存在的慢操作.慢查询日志就是系统在命令执行前后计算每条命令的执行时间,当超过预设阀值,就将这条命令的相关信息(慢查询ID,发生时间戳,耗时,命令的详细信息)记录下来. Redis客户端一条命令分为如下四部分执行: 需要注意的是,慢查询日志只是统计步骤3)执行命令的时间,所以慢查询并不代表客户端没有超时问题.需要注意的是,慢查询日志只是统计步骤3)执行命令的时间,所以慢查询并不代表客户端没有超时问题. 一.慢查询的配置参数: 慢查询的预设阀值 slow

  • redis中Hash字典操作的方法

    目录 1.Redis操作之Hash操作 redis hash字典操作 1.Redis操作之Hash操作 redis支持五大数据类型,只支持第一层,也就说字典的value值,必须是字符串 如果value值想存字典,必须用json转换一下,转成字符串 redis hash字典操作 reids:{ k1:'dafdadfasf', m1:{ 'key2':value2, 'key1':value1, } } 1.hset(name, key, value),插入值 # name对应的hash中设置一个

  • redis中lua脚本的简单使用

    一.背景 在使用redis的过程中,发现有些时候需要原子性去操作redis命令,而redis的lua脚本正好可以实现这一功能.比如: 扣减库存操作.限流操作等等. redis的pipelining虽然也可以一次执行一组命令,但是如果在这一组命令的执行过程中,需要根据上一步执行的结果做一些判断,则无法实现. 二.使用lua脚本 Redis中使用的是 Lua 5.1 的脚本规范,同时我们编写的脚本的时候,不需要定义 Lua 函数.同时也不能使用全局变量等等. 1.lua脚本的格式和注意事项 1.格式

  • Redis中Lua脚本的使用和设置超时

    目录 EVAL命令简介 eval格式 特性 执行流程 关于脚本超时 SCRIPT KILL 命令 SHUTDOWN NOSAVE 命令 参考 Redis提供了Lua脚本功能来让用户实现自己的原子命令,但也存在着风险,编写不当的脚本可能阻塞线程导致整个Redis服务不可用. 本文将介绍Redis中Lua脚本的基本用法,以及脚本超时导致的问题和处理方式. EVAL命令简介 eval格式 Redis 提供了命令EVAL来执行Lua脚本,格式如下 EVAL script numkeys key [key

随机推荐