Memorystore for Redis instances with no connected clients for 30 days
What does ZopNight detect here?
Memorystore for Redis instances are flagged when `redis.googleapis.com/clients/connected` stays below one connection on average and at peak for 30 days, and command throughput, where measured, is also below one operation per second. Memorystore bills provisioned capacity per GiB in one-second increments whether or not anyone uses the cache.
Signal and threshold
| Field | Value |
|---|---|
| Rule IDs | RC-1245 |
| Category | idle |
| Severity | medium |
| Metric | redis.googleapis.com/clients/connected |
| Threshold | under 1 connected client and under 1 op/s |
| Evaluation window | 30d |
| Source | ZopNight |
| Permissions used | redis.instances.list · monitoring.timeSeries.list |
Where it applies
Provisioned GiB bill from the moment of creation
Memorystore for Redis charges for capacity you reserve, not for commands you run. Google’s Memorystore pricing says charges start when you create the instance and, whether you use it or not, are based on provisioned capacity in GiB, billed in one-second increments. Price depends on the service tier, the capacity tier the instance falls into and the region. Standard Tier adds cross-zone replication and failover, and read replicas add nodes that bill as well.
A cache left behind by a retired service therefore keeps its full hourly charge.
Measuring client activity yourself
gcloud redis instances list --region=REGION \ --format="table(name,tier,memorySizeGb,state)"In Metrics Explorer, chart redis.googleapis.com/clients/connected for the instance over 30 days.
A line pinned at zero means no application holds a connection. redis.googleapis.com/commands/calls
shows whether any commands ran.
Two activity measures, one required
- Connected clients stay below 1 on both average and peak across the window. This measure must exist for the instance.
- Command throughput, when ZopNight has it, also stays below 1 operation per second on average and at peak.
- The measured history spans at least 30 days.
- The instance has a known monthly cost.
Signals ZopNight does not treat as activity
CPU is not used as evidence of use: background maintenance and replication can register CPU on an instance that no application touches, and counting it would hide abandoned caches. When the connection metric is missing, or history is shorter than 30 days, the rule stays silent. A single client holding a connection at any point clears the instance.
What the finding is worth
saving = current monthly instance costcost after deletion = 0If the instance must remain for a planned launch, scaling it to a smaller capacity tier is the partial saving.
Decommissioning the cache
- Confirm no application configuration, secret or connection string points at the instance’s host and port.
- If the data matters, export it to Cloud Storage as an RDB file:
gcloud redis instances export gs://BUCKET/FILE.rdb INSTANCE_ID --region=REGION. - Delete the instance:
gcloud redis instances delete INSTANCE_ID --region=REGION. - Remove the old host and port from secrets and configuration so nothing tries to reconnect.