Skip to main content

RedisDB


RedisDB

Overview

The Redis integration with Motadata AIOps captures health, performance, memory, persistence, replication, and keyspace KPIs from Redis servers. Metrics are grouped by subsystem for clearer monitoring and alerting.

Prerequisites

Ensure the following before onboarding Redis:

  • Redis server is reachable over the network.
  • The Redis INFO command (or equivalent API/exporter) is enabled for the monitoring user.
  • Required credentials/allowlist are configured (if requirepass/ACLs are used).
  • The device is discovered in AIOps using the supported protocol/collector.

List of Supported KPIs

Server / General

MetricDescriptionType
redis.versionRedis server version.String
redis.git.dirtyWhether the source tree had local changes at build time (0/1).Boolean
redis.build.idBuild identifier.String
redis.modeServer mode (standalone/cluster/sentinel).String
redis.osHost operating system.String
redis.architectureCPU architecture (e.g., x86_64, arm64).String
redis.process.idRedis process ID.Integer
redis.run.idRandom server run ID.String
redis.tcp.portTCP port Redis listens on.Integer
redis.uptime.secondsUptime since start in seconds.Seconds
redis.uptime.daysUptime since start in days.Count
redis.hzServer hz frequency.Integer
redis.configured.hzConfigured hz value when dynamic.Integer
redis.lru.clock.hzApproximate LRU clock value.Integer
redis.active.io.threadsNumber of active I/O threads.Count

Clients

MetricDescriptionType
redis.connected.clientsCurrently connected clients.Count
redis.client.recent.max.input.buffer.bytesPeak input buffer size seen recently.Bytes
redis.client.recent.max.output.buffer.bytesPeak output buffer size seen recently.Bytes
redis.blocked.clientsClients blocked by commands like BLPOP.Count
redis.tracking.clientsClients with client-side tracking enabled.Count
redis.time.out.clientsClients in the timeout table.Count

Memory

MetricDescriptionType
redis.memory.used.percentOverall memory used vs. system/max.Percent
redis.memory.used.bytesTotal memory used by Redis.Bytes
redis.memory.used.rss.bytesResident set size (RSS).Bytes
redis.memory.used.peak.bytesPeak memory consumed.Bytes
redis.memory.used.peak.percentPeak memory vs. max.Percent
redis.memory.used.overhead.bytesOverhead (non-data) memory.Bytes
redis.memory.used.startup.bytesMemory consumed at startup.Bytes
redis.memory.used.dataset.bytesMemory used by dataset.Bytes
redis.memory.used.dataset.percentDataset memory vs. total.Percent
redis.allocator.allocated.bytesAllocator allocated bytes.Bytes
redis.allocator.active.bytesAllocator active bytes.Bytes
redis.allocator.resident.bytesAllocator resident bytes.Bytes
redis.system.memory.capacity.bytesTotal system memory.Bytes
redis.memory.used.lua.bytesLua engine memory.Bytes
redis.memory.used.scripts.bytesCached Lua scripts memory.Bytes
redis.cached.scriptsNumber of cached Lua scripts.Count
redis.max.memory.bytesmaxmemory setting.Bytes
redis.max.memory.policyEviction policy.String
redis.allocator.frag.ratio.percentAllocator fragmentation ratio.Percent
redis.allocator.frag.bytesAllocator fragmentation bytes.Bytes
redis.allocator.rss.ratio.percentAllocator RSS ratio.Percent
redis.allocator.rss.bytesAllocator RSS bytes.Bytes
redis.rss.overhead.ratio.percentRSS overhead ratio.Percent
redis.rss.overhead.bytesRSS overhead bytes.Bytes
redis.memory.fragmentation.ratio.percentMemory fragmentation ratio.Percent
redis.memory.fragmentation.bytesFragmentation bytes.Bytes
redis.memory.non.evict.bytesMemory not counted for eviction.Bytes
redis.memory.replication.backlog.bytesReplication backlog size.Bytes
redis.memory.clients.slaves.bytesReplica (slave) clients memory.Bytes
redis.memory.clients.normal.bytesNormal clients memory.Bytes
redis.memory.aof.buffer.bytesAOF buffer memory.Bytes
redis.memory.allocatorAllocator in use (jemalloc etc.).String
redis.active.defrag.runningActive defragmentation is running (0/1).Boolean
redis.lazyfree.pending.objectsPending objects for lazy free.Count

Persistence (RDB / AOF / Module Fork)

MetricDescriptionType
redis.loadingServer is loading a dataset (0/1).Boolean
redis.rdb.unsaved.changesChanges since last successful RDB save.Count
redis.rdb.bg.save.in.progressBackground RDB save running (0/1).Boolean
redis.rdb.last.save.timeLast successful RDB save timestamp.Timestamp
redis.rdb.last.bg.save.statusResult of last background RDB save.String
redis.rdb.last.bg.save.time.secondsDuration of last RDB BGSAVE.Seconds
redis.rdb.current.bg.save.time.secondsElapsed time of current RDB BGSAVE.Seconds
redis.rdb.last.cow.size.bytesCopy-on-write size used by last RDB.Bytes
redis.aof.enabledAOF persistence enabled (0/1).Boolean
redis.aof.rewrite.in.progressAOF rewrite in progress (0/1).Boolean
redis.aof.rewrite.scheduledAOF rewrite scheduled (0/1).Boolean
redis.aof.last.rewrite.time.secondsDuration of last AOF rewrite.Seconds
redis.aof.current.rewrite.time.secondsElapsed time of current AOF rewrite.Seconds
redis.aof.last.bg.rewrite.statusResult of last AOF BGREWRITEAOF.String
redis.aof.last.write.statusStatus of last AOF write.String
redis.aof.last.cow.size.bytesCOW size used by last AOF.Bytes
redis.module.fork.in.progressModule fork in progress (0/1).Boolean
redis.module.fork.last.cow.size.bytesCOW size used by last module fork.Bytes

Stats & Performance

MetricDescriptionType
redis.received.connections.rateNew connections per interval.Count
redis.processed.commands.rateCommands processed per interval.Count
redis.instantaneous.ops.per.secInstantaneous ops per second.Count
redis.total.net.input.bytesCumulative network input.Bytes
redis.total.net.output.bytesCumulative network output.Bytes
redis.instantaneous.input.bytes.per.secIncoming bandwidth rate.Bytes/sec
redis.instantaneous.output.bytes.per.secOutgoing bandwidth rate.Bytes/sec
redis.rejected.connections.rateRejected connections per interval.Count
redis.sync.fullFull resynchronizations.Count
redis.sync.partial.okSuccessful partial resyncs.Count
redis.sync.partial.errFailed partial resyncs.Count
redis.expired.keysKeys expired since start.Count
redis.expired.stale.percentStale percentage in active expire.Percent
redis.expire.time.cap.reachedExpire cycle time cap reached (0/1).Boolean
redis.expire.cycle.cpu.msCPU ms spent in expire cycle.Milliseconds
redis.evicted.keysKeys evicted due to maxmemory.Count
redis.keyspace.hitsSuccessful key lookups.Count
redis.keyspace.missesMissed key lookups.Count
redis.pubsub.channelsActive Pub/Sub channels.Count
redis.pubsub.patternsActive Pub/Sub patterns.Count
redis.latest.fork.micro.secondsDuration of last fork() call.Microseconds
redis.migrate.cached.socketsMigrated cached sockets.Count
redis.slave.expires.tracked.keysReplica-tracked EXPIRE keys.Count
redis.active.defrag.hitsActive defrag hits.Count
redis.active.defrag.missesActive defrag misses.Count
redis.active.defrag.key.hitsKey-level defrag hits.Count
redis.active.defrag.key.missesKey-level defrag misses.Count
redis.tracking.keysNumber of tracked keys.Count
redis.tracking.itemsNumber of tracked items.Count
redis.tracking.prefixesNumber of tracked prefixes.Count
redis.unexpected.error.repliesUnexpected error replies.Count
redis.reads.processedFile descriptor reads processed.Count
redis.writes.processedFile descriptor writes processed.Count
redis.io.threaded.reads.processedReads processed by I/O threads.Count
redis.io.threaded.writes.processedWrites processed by I/O threads.Count

Replication

MetricDescriptionType
redis.replication.roleReplication role (master/replica).String
redis.replication.connected.slavesConnected replicas.Count
redis.replication.master.replication.offsetMaster replication offset.Count
redis.replication.second.replication.offsetReplica second replication offset.Count
redis.replication.active.backlogBacklog is active (0/1).Boolean
redis.replication.backlog.bytesBacklog size.Bytes
redis.replication.backlog.first.byte.offsetBacklog first byte offset.Count
redis.replication.backlog.used.bytesBacklog used bytes.Bytes

CPU

MetricDescriptionType
redis.system.cpu.secondsSystem CPU time (main thread).Seconds
redis.user.cpu.secondsUser CPU time (main thread).Seconds
redis.system.children.cpu.secondsSystem CPU time (children).Seconds
redis.user.children.cpu.secondsUser CPU time (children).Seconds

Cluster

MetricDescriptionType
redis.cluster.enabledCluster mode enabled (0/1).Boolean

Keyspace

MetricDescriptionType
redis.dbLogical database identifier (e.g., db0).String
redis.db.keysNumber of keys in the DB.Count
redis.db.expiresKeys with an expiration set.Count
redis.db.avg.ttlAverage TTL of keys (ms).Milliseconds