redis-exporter grafana面板配置

一、前言

     关于使用tensuns自带的grafana监控模板,监控redis-exporter接口会有一些数据丢失的问题,需要自行修改一下grafana模板的json

二、修改模板

redis grafana模板id:17507

主要是针对cpu使用率和内存使用率做一个说明,因为我在使用该模板时cpu使用率和内存使用率数据缺失

cpu是因为redis_exporter的数据收集中并没有redis_cpu_util这个数据项,所以显示就自然没有数据可以在prometheus查询该项会发现为空,需要使用node_exporter收集的cpu数据来展示

内存使用率会显示一个无穷大的数据,因为内存使用率是使用redis_exporter收集的redis_memory_used_bytes和redis_memory_max_bytes来计算的,我显示无穷大的原因是在配置redis时并没有给redis配置maxmemory最大内存限制,而redis_memory_max_bytes就是取得maxmemory的数据,所以需要给redis配置maxmemory

以下是我修改以后的json文件

修改cpu%项

      "editorMode": "code",
      "exemplar": false,
      "expr": "redis_cpu_util * on (iid) group_right redis_up{account=~\"$account\",group=~\"$group\"} or label_replace(( 1- avg(rate(node_cpu_seconds_total{mode=\"idle\"}[2m])) by (instance))*100,\"nodehost\",\"$1\",\"instance\",\"(.*):.*\") * on (nodehost) group_left(vendor,account,group,name,region,instance) label_replace(redis_up{account=~\"$account\",group=~\"$group\"},\"nodehost\",\"$1\",\"instance\",\"(.*):.*\")",    #更改该项获取数据的配置,改成获取node_exporter监控的cpu参数
      "format": "table",
      "hide": false,
      "instant": true,
      "interval": "",
      "legendFormat": "__auto",
      "refId": "B"
    },

修改CPU使用率项

 

"targets": [
    {
      "datasource": {
        "type": "prometheus",
        "uid": "b270c2e2-cc3e-426b-a9ef-80a48217de5f"
      },
      "exemplar": true,
      "expr": "(1 - avg(rate(node_cpu_seconds_total{instance=~\"$node_host:.+\",mode=\"idle\"}[2m])) by (instance))*100",      #修改该项为从node_exporter获取cpu监控数据
      "interval": "2m",
      "legendFormat": "CPU使用率",
      "refId": "A"
    }

还需要增加一个关于node_host的取值,redis_exporter的grafana模板原本的json是没有node_host

 

        {
        "current": {
          "selected": false,
          "text": "10.1.60.19:6379",
          "value": "10.1.60.19:6379"
        },
        "datasource": {
          "type": "prometheus",
          "uid": "b270c2e2-cc3e-426b-a9ef-80a48217de5f"
        },
        "definition": "label_values(redis_up{vendor=~\"$vendor\",account=~\"$account\",group=~\"$group\",name=~\"$name\"}, instance)",
        "hide": 0,
        "includeAll": false,
        "multi": false,
        "name": "instance",
        "options": [],
        "query": {
          "query": "label_values(redis_up{vendor=~\"$vendor\",account=~\"$account\",group=~\"$group\",name=~\"$name\"}, instance)",
          "refId": "StandardVariableQuery"
        },
        "refresh": 2,
        "regex": "",
        "skipUrlSync": false,
        "sort": 1,
        "tagValuesQuery": "",
        "tagsQuery": "",
        "type": "query",
        "useTags": false
      },                #在此处插入以下内容
      {
        "allFormat": "glob",
        "current": {
          "selected": false,
          "text": "10.1.60.19",
          "value": "10.1.60.19"
        },
        "datasource": {
          "type": "prometheus",
          "uid": "b270c2e2-cc3e-426b-a9ef-80a48217de5f"
        },
        "definition": "label_values(redis_up{vendor=~\"$vendor\",account=~\"$account\",group=~\"$group\",name=~\"$name\"}, instance)",
        "hide": 2,
        "includeAll": false,
        "label": "NodeHost",
        "multi": false,
        "multiFormat": "regex values",
        "name": "node_host",        #取node_host值
        "options": [],
        "query": {
          "query": "label_values(redis_up{vendor=~\"$vendor\",account=~\"$account\",group=~\"$group\",name=~\"$name\"}, instance)",
          "refId": "StandardVariableQuery"
        },
        "refresh": 2,
        "refresh_on_load": false,
        "regex": "/(.*):.*/",
        "skipUrlSync": false,
        "sort": 5,
        "type": "query",
        "useTags": false
      },                  #到此处截止
      {
        "current": {
          "isNone": true,
          "selected": false,
          "text": "None",
          "value": ""
        },
        "datasource": {
          "type": "prometheus",
          "uid": "b270c2e2-cc3e-426b-a9ef-80a48217de5f"
        },
        "definition": "label_values(redis_up{vendor=~\"$vendor\",account=~\"$account\",group=~\"$group\",name=~\"$name\"}, iid)",
        "hide": 2,
        "includeAll": false,
        "multi": false,
        "name": "iid",
        "options": [],
        "query": {
          "query": "label_values(redis_up{vendor=~\"$vendor\",account=~\"$account\",group=~\"$group\",name=~\"$name\"}, iid)",
          "refId": "StandardVariableQuery"
        },
        "refresh": 2,
        "regex": "",
        "skipUrlSync": false,
        "sort": 1,
        "tagValuesQuery": "",
        "tagsQuery": "",
        "type": "query",
        "useTags": false
      }

配置完成后可以查看获取数据的语句是否能正确执行

 

 以上就是使用redis grafana模板时的一些问题

redis-exporter 提供了多个监控指标,包括以下内容: 1. Redis 服务器信息: - redis_exporter_build_info:redis-exporter 的版本和构建信息。 - redis_exporter_scrapes_total:自启动以来执行的总抓取次数。 2. Redis 内存指标: - redis_memory_used_bytes:Redis 实例当前使用的内存大小(以字节为单位)。 - redis_memory_peak_bytes:Redis 实例历史上使用的最大内存大小(以字节为单位)。 - redis_memory_fragmentation_ratio:Redis 实例的内存碎片率。 3. Redis 连接指标: - redis_connections_connected:当前与 Redis 实例建立的连接数。 - redis_connections_received_total:自启动以来总共接收到的连接数。 - redis_connections_rejected_total:自启动以来总共拒绝的连接数。 4. Redis 命令指标: - redis_commands_processed_total:自启动以来总共处理的命令数。 - redis_commands_duration_seconds:Redis 命令的执行时间(单位:秒)。 5. Redis 键值对指标: - redis_keyspace_keys:当前 Redis 实例中存在的键值对数量。 - redis_keyspace_expires:当前 Redis 实例中设置了过期时间的键值对数量。 6. Redis 慢查询指标: - redis_slowlog_last_entry_id:Redis 慢查询日志的最后一条条目 ID。 - redis_slowlog_entries_total:自启动以来总共记录的慢查询日志条目数。 7. Redis 主从复制指标: - redis_replication_status:Redis 实例的主从复制状态(主机、从机、无复制)。 8. Redis RDB 指标: - redis_rdb_last_save_time_seconds:最后一次执行 RDB 持久化的时间戳。 - redis_rdb_changes_since_last_save:自上次 RDB 持久化以来的修改次数。 以上只是一些常见的监控指标,redis-exporter 还提供了更多详细的指标,可以根据实际需求进行配置和使用。要查看完整的指标列表和详细说明,您可以参考 redis-exporter 的官方文档或 GitHub 仓库中的说明。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值