问题描述

对于PaaS的Azure Cache for Redis,Azure中有哪些监控方式?是否能有api接口调用来获取监控值?

问题答案

1) 在Redis的门户中,使用Metrics查看Redis的Service Load,Memroy, CPU指标:https://docs.azure.cn/zh-cn/azure-cache-for-redis/cache-how-to-monitor#monitoring-charts

2) 在Azure Monitor -> Insight 来监控:https://docs.azure.cn/zh-cn/azure-monitor/insights/redis-cache-insights-overview

3) 使用API调用指标,参考文章:使用Python代码获取Azure Redis的监控指标值 (含Powershell脚本方式)

    Metric Definitions - Listhttps://docs.microsoft.com/en-us/rest/api/monitor/metricdefinitions/list,(注:替代文件中的url host为management.chinacloudapi.cn

Redis的监控指标

Metrics Name 指标 说明
Cache Hits

缓存命中数

在指定的报告间隔期间,成功的键查找次数。 此数目映射到 Redis INFO 命令输出中的 keyspace_hits。
Cache Latency (Preview) 缓存延迟(预览)

基于缓存的节点间延迟计算缓存的延迟。该指标以微秒为单位,具有三个维度:Avg、Min 和 Max,分别表示指定的报告间隔期间缓存的平均延迟、最小延迟和最大延迟。

Cache Misses 缓存未命中数

在指定的报告间隔期间,失败的键查找次数。此数目映射到 Redis INFO 命令输出中的 keyspace_misses。缓存未命中并不一定意味着缓存出现了问题。

例如,在使用缓存端编程模式时,应用程序会首先查找缓存中的项。

  • 如果该项不存在(缓存未命中),则将从数据库中检索该项并将其添加到下一次缓存中。 对于缓存端编程模式,缓存未命中是正常行为。
  • 如果缓存未命中数大于预期值,请检查从缓存中填充并读取的应用程序逻辑。
  • 如果由于内存压力而导致项目从缓存中逐出,则可能存在一些缓存未命中的情况,但指标 Used Memory 或 Evicted Keys 可以更好的监视内存压力。
Cache Read 缓存读取量

指定报告间隔期间,从缓存中读取的数据量,以每秒兆字节数(MB/秒)为单位。

此值来源于支持虚拟机的网络接口卡,该虚拟机托管缓存,但并不特定于 Redis。 此值对应于该缓存使用的网络带宽。

Cache Write 缓存写入量

指定报告间隔期间,写入缓存中的数据量,以每秒兆字节数(MB/秒)为单位。

此值来源于支持虚拟机的网络接口卡,该虚拟机托管缓存,但并不特定于 Redis。 此值对应于从客户端发送到缓存的数据的网络带宽。

Connected Clients 连接的客户端数

指定的报告间隔期间,客间户端与缓存的连接数。 此数目映射到 Redis INFO 命令输出中的 connected_clients。

一旦达到了连接限制,则对缓存的后续连接尝试将失败。

即使没有任何活动的客户端应用程序,由于内部进程和连接,仍可能存在一些连接的客户端的实例。

CPU CPU 指定报告间隔期间,用于 Redis 的 Azure 缓存服务器的 CPU 使用率(以百分比表示)。 此值映射到操作系统 \Processor(_Total)\% Processor Time 性能计数器
Errors 错误

在指定的报告间隔期间,缓存可能会出现的特定故障和性能问题。 该指标现在具有7个维度,表示不同的错误类型。 它们所代表的错误类型如下:

  1. Failover - 缓存故障转移时(从属缓存提升为主缓存)
  2. Dataloss - 缓存上发生数据丢失时
  3. UnresponsiveClients - 客户端从服务器读取数据的速度不够快时
  4. AOF - 存在与 AOF 暂留有关的问题时
  5. RDB - 存在与 RDB 暂留有关的问题时
  6. Import - 存在与导入 RDB 有关的问题时
  7. Export - 存在与导出 RDB 有关的问题时
Evicted Keys 逐出的密钥数 由于 maxmemory 限制,指定的报告间隔期间从缓存中逐出的项目数。 此数目映射到 Redis INFO 命令输出中的 evicted_keys。
Expired Keys 过期的密钥数 指定的报告间隔期间,缓存中过期的项目数。 此值映射到 Redis INFO 命令输出中的 expired_keys 。
Gets 获取数

指定的报告间隔期间,缓存中的获取操作数。

  • 此值是以下 Redis INFO 所有命令中的值的总和:

    • cmdstat_get、cmdstat_hget、cmdstat_hgetall、cmdstat_hmget、
    • cmdstat_mget、cmdstat_getbit 和 cmdstat_getrange
  • 等效于报告间隔期间缓存命中和未命中数的总和。
Operations per Second 每秒操作数 指定的报告间隔期间,由缓存服务器处理的每秒命令总数。 此值映射到 Redis INFO 命令中的“instantaneous_ops_per_sec”
Redis Server Load Redis 服务器负载

Redis 服务器忙于处理消息并且非空闲等待消息的周期百分比。

如果此计数器达到 100,则意味着 Redis 服务器已达到性能上限并且 CPU 无法更快地工作。

如果看到高 Redis 服务器负载,则会在客户端看到超时异常。 在这种情况下,应该考虑将数据扩大或分区到多个缓存。

Sets 设置数

指定的报告间隔期间,对缓存的设置操作数。 此值是以下 Redis INFO 所有命令中的值的总和:

cmdstat_set、cmdstat_hset、cmdstat_hmset、cmdstat_hsetnx、cmdstat_lset、cmdstat_mset、

cmdstat_msetnx、cmdstat_setbit、cmdstat_setex、cmdstat_setrange 和 cmdstat_setnx。

Total Keys 总密钥数

在上一个报告时段缓存中的最大密钥数。 此数目映射到 Redis INFO 命令输出中的 keyspace。

注:由于基础指标系统存在限制,对于已启用群集的缓存,“总密钥数”将返回在上一个报告时段内密钥数最多的分片的最大密钥数。

Total Operations 总操作数

指定的报告间隔期间,由缓存服务器处理的命令总数。此值映射到 Redis INFO 命令输出中的 total_commands_processed 。

当 Azure Cache for Redis 纯粹用于发布/订阅时,将不存在 Cache Hits、Cache Misses、Gets 或 Sets 的度量值,

但存在 Total Operations 度量值,该度量值反映发布/订阅操作的缓存使用情况。

Used Memory 已用内存

在指定报告间隔期间,缓存中的键/值对所用的缓存内存量(以 MB 为单位)。 此值映射到 Redis INFO 命令输出中的 used_memory 。

此值不包括元数据或碎片。

Used Memory Percentage 已用内存百分比 指定报告间隔期间使用的总内存的百分比。 此值引用 Redis INFO 命令输出中的 used_memory 值来计算百分比。
Used Memory RSS 已用内存 RSS 指定报告间隔期间所用的缓存内存量(以 MB 为单位),包括碎片和元数据。 此值映射到 Redis INFO 命令输出中的 used_memory_rss 。

参考资料

使用Python代码获取Azure Redis的监控指标值 (含Powershell脚本方式): https://www.cnblogs.com/lulight/p/14389944.html

探究适用于 Azure Cache for Redis 的 Azure Monitorhttps://docs.azure.cn/zh-cn/azure-monitor/insights/redis-cache-insights-overview

监视用于 Redis 的 Azure 缓存https://docs.azure.cn/zh-cn/azure-cache-for-redis/cache-how-to-monitor

【Azure Redis 缓存】Redis的监控方式? 是否有API接口调用来获取监控值的更多相关文章

  1. 第二百九十四节,Redis缓存-Redis安装

    redis简介 redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(sor ...

  2. 【redis】redis实现API接口调用调用次数的限制

    redis实现API接口调用调用次数的限制 参考地址:https://bbs.csdn.net/topics/391856106?page=1 参考地址:https://www.cnblogs.com ...

  3. ThinkPHP5配置redis缓存

    thinkphp采用cache类提供缓存功能支持,采用驱动方式,在使用缓存之前需要进行初始化操作.支持的缓存类型包括file.memcache.wincache.sqlite.redis和xcache ...

  4. thinkphp5的Redis缓存配置

    thinkphp采用cache类提供缓存功能支持,采用驱动方式,在使用缓存之前需要进行初始化操作.支持的缓存类型包括file.memcache.wincache.sqlite.redis和xcache ...

  5. TP5中用redis缓存

    在config.php配置文件下找到缓存设置,将原来的文件缓存修改为redis缓存,也可以改为多种类型的缓存: // +---------------------------------------- ...

  6. C# Azure 存储-分布式缓存Redis的新建&配置&查看

    1. 介绍 Redis 是一款开源的,基于 BSD 许可的,高级键值 (key-value) 缓存 (cache) 和存储 (store) 系统.由于 Redis 的键包括 string,hash,l ...

  7. Windows Azure Redis 缓存服务

    8月20日,Windows Azure (中国版)开始提供Redis缓存服务,比较国际版的Microsoft Azure晚了差不多一年的时间.说实话,微软真不应该将这个重要的功能delay这么长时间, ...

  8. Azure Redis 缓存使用注意事项与排查问题文档整理

    StackExchange.Redis 使用名为 synctimeout 的配置设置进行同步操作,该设置的默认值为 1000 毫秒. 如果同步调用未在规定时间内完成,StackExchange.Red ...

  9. Azure Redis 缓存的 ASP.NET 会话状态提供程序

    Azure Redis Cache 提供了一个会话状态提供程序,你可以使用其在缓存中(而不是内存中或在 SQL Server 数据库中)存储会话状态.要使用缓存会话状态提供程序,先首先配置缓存,然后使 ...

  10. 【Azure Redis 缓存 Azure Cache For Redis】如何设置让Azure Redis中的RDB文件暂留更久(如7天)

    问题描述 Azure Redis和所有的Redis服务一样,可以让你保留存储在Redis中的数据.以防万一在Redis服务器出现故障的时候能尽可能小的减少数据的损失.在Azure Redis服务中,默 ...

随机推荐

  1. sed 反斜线换成正斜线

    命令为: sed -i "s:\\\:\/:g" yourfiles

  2. 【图论,网络流】CF1525F Goblins And Gnomes

    Problem Link 你在打怪.你有一个 \(n\) 个点 \(m\) 条边的 DAG,接下来会有 \(k\) 波怪来袭,第 \(i\) 波怪有 \(i\) 个,它们会各自选择走一条路径,要求它们 ...

  3. 【0基础学爬虫】爬虫基础之自动化工具 Pyppeteer 的使用

    大数据时代,各行各业对数据采集的需求日益增多,网络爬虫的运用也更为广泛,越来越多的人开始学习网络爬虫这项技术,K哥爬虫此前已经推出不少爬虫进阶.逆向相关文章,为实现从易到难全方位覆盖,特设[0基础学爬 ...

  4. chrome谷歌浏览器多开(独立环境 独立cookie)

    复制下面代码(路径) "C:\Program Files\Google\Chrome\Application\chrome.exe" --user-data-dir="D ...

  5. 开源IM项目OpenIM新版本发布-生产环境需更新

    项目简介 Android体验地址:https://www.pgyer.com/OpenIM 注册后自动加入组织,和群聊 群聊页面 工作台 工作台,业务可以通过jssdk自由扩展自身业务 工作圈 工作圈 ...

  6. TC插件管理器及在TC中新建文件

    新建文件 Shift+F4可以新建文件,但是会调用内置的编辑器来打开. 在设置中通过修改F4快捷键对应的程序来修改. PS.F4编辑没找到根据扩展名来调用指定程序打开,可以F3中进行补充. NewFi ...

  7. Pytest 源码解读 [1] - [pluggy] 核心设计理念浅读

    背景: Pytest 是一个功能强大的 Python 测试框架,它使用了一个名为 "pluggy" 的插件系统来扩展其功能.在 Pytest 的源码中,pluggy 模块负责实现插 ...

  8. iOS使用Run Script提升开发效率

    通过在Xcode Run Script添加shell脚本,然后通过脚本来帮助我们在编译阶段完成一下资源的copy,文件替换,修改等繁琐的事件.使Xcode在编译过程中自动完成耗时繁琐的操作提升开发效率 ...

  9. KB0001.修改DoraCloud管理系统的IP地址

    KB0001.修改DoraCloud管理系统的IP地址 DoraCloud 管理系统是一个CentOS Linux的虚拟机.我们既可以通过DoraCloud后台管理系统修改它的IP地址,也可以通过Ce ...

  10. 小知识:杜绝明文密码,OGG的credentialstore特性

    之前OGG配置文件中都会明文记录密码,而在OGG12c及以上版本中,有一个特性credentialstore,可以用来杜绝明文密码,提升安全性. 这里测试添加credentialstore并配置数据库 ...