Go 实现的 Redis 内存分析工具 go-redis-memory-analysis

MIT
Google Go 查看源码»
跨平台
2018-07-11
好好先森V5

这是一个 Go 语言实现的 Redis 内存分析工具:用于找出占用内存较多的 Key,将结果导出至 csv 文件。

示例代码

通过直接连接到 redis 来分析 key

analysis := NewAnalysis()
//Open redis: 127.0.0.1:6379 without password
err := analysis.Open("127.0.0.1", 6379, "")
defer analysis.Close()
if err != nil {
    fmt.Println("something wrong:", err)
    return
}
//Scan the keys which can be split by '#' ':'
//Special pattern characters need to escape by '\'
analysis.Start([]string{"#", ":"})
//Find the csv file in default target folder: ./reports
//CSV file name format: redis-analysis-{host:port}-{db}.csv
//The keys order by count desc
err = analysis.SaveReports("./reports")
if err == nil {
    fmt.Println("done")
} else {
    fmt.Println("error:", err)
}

通过 redis RDB 文件分析 key,但无法计算出 key 的大小

analysis := NewAnalysis()
//Open redis rdb file: ./6379_dump.rdb
err := analysis.OpenRDB("./6379_dump.rdb")
defer analysis.CloseRDB()
if err != nil {
    fmt.Println("something wrong:", err)
    return
}
//Scan the keys which can be split by '#' ':'
//Special pattern characters need to escape by '\'
analysis.StartRDB([]string{"#", ":"})
//Find the csv file in default target folder: ./reports
//CSV file name format: redis-analysis-{host:port}-{db}.csv
//The keys order by count desc
err = analysis.SaveReports("./reports")
if err == nil {
    fmt.Println("done")
} else {
    fmt.Println("error:", err)
}

Demo

 

的码云指数为
超过 的项目
加载中

评论(0)

暂无评论

暂无资讯

暂无问答

Redis info

读《Redis 实战》笔记,主要记录 Redis 对 info 操作的相关命令,记录一下方便后期学习

2016/09/30 17:43
33
0
redis info命令详解

以一种易于解释(parse)且易于阅读的格式,返回关于 Redis 服务器的各种信息和统计数值。 通过给定可选的参数 section ,可以让命令只返回某一部分的信息: server : 一般 Redis 服务器信息...

2016/01/19 16:08
183
1
Redis_安装配置.md

最近需要重新搭建redis开发环境,在此记录简单的配置过程

2016/02/18 10:36
21
1
redis-rdb-tools来解析分析reids dump文件及内存使用量

redis-rdb-tools来解析分析reids dump文件及内存使用量 一. 前言 解析redis的dump.rdb文件,分析内存,以JSON格式导出数据。| 提供的功能有: 1. 生成内存报告 2. 转储文件到JSON 3. 使用标准...

2018/07/16 18:00
131
0
记一次Redis内存诡异增长

一、现象 实例名:r-bp1cxxxxxxxxxd04(主从) 时间:2017-11-16 12:26~12:27 问题:一分钟内存上涨了2G,如下图所示: 键值规模:6000万左右 二、Redis内存分析 1.内存组成 上图中的内存统计的...

2018/08/21 17:21
10
0
记一次Redis内存诡异增长

一、现象 实例名:r-bp1cxxxxxxxxxd04(主从) 时间:2017-11-16 12:26~12:27 问题:一分钟内存上涨了2G,如下图所示: 键值规模:6000万左右 二、Redis内存分析 1.内存组成 上图中的内存统计的...

2018/12/05 14:34
10
0
最新 centos7下zabbix 监控redis状态

准备 先准备两台服务器,已经部署好了zabbix-sever和zabbix-agent zabbix-server 192.168.1.70 centos7.2 zabbix-agent 192.168.1.70 centos7.2 zabbix-agent端 安装部署redis redis的部署过...

07/18 11:56
0
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部