Metric MIMIR renaming issue after Grafana OSS v12 to v13 upgrade

Hi, good afternoon. I noticed that after upgrading Grafana from v12 to v13, many Mimir metrics changed their names, and my panels started showing ‘No data’. For example, metrics like jvm_memory_used_bytes changed to jvm_memory_used. Is there a way to preserve the old metric names so I don’t have to manually fix multiple dashboards?


What Grafana version and what operating system are you using?

  • Grafana Version: v13.0.1 (upgraded from v12)

  • Operating System: Linux (Kubernetes / Rancher environment)

What are you trying to achieve? I want to maintain the legacy Mimir metric names (such as jvm_memory_used_bytes) after upgrading Grafana to v13, so I don’t have to manually update and fix dozens of existing dashboards.

How are you trying to achieve it? By upgrading my Grafana instance from v12 to v13 to leverage the latest features, assuming standard Prometheus/Mimir data source compatibility would remain seamless or backward compatible for my Java/JVM application dashboards.

What happened? After the upgrade, many Mimir metrics automatically changed their naming convention. For instance, jvm_memory_used_bytes became jvm_memory_used (dropping the _bytes suffix). Because of this, my existing panel queries broke, and the charts are now showing “No data”.

What did you expect to happen? I expected the metrics to either keep their original names or have a backward compatibility layer/setting available so that my legacy dashboards wouldn’t break immediately upon upgrading.

Can you copy/paste the configuration(s) that you are having problems with? Here is an example of a PromQL query inside a broken panel:

Snippet de código

# Old query that now returns "No data"
sum(jvm_memory_used_bytes{area="heap"}) by (application)

It only works now if I manually change it to:

Snippet de código

sum(jvm_memory_used{area="heap"}) by (application)

Did you receive any errors in the Grafana UI or in related logs? If so, please tell us exactly what they were. No explicit system errors or crashes in the logs. The Grafana UI simply displays the standard "No data" visual warning on all panels using the old metric naming format.

Did you follow any online instructions? If so, what is the URL? I followed the standard Grafana v13 upgrade documentation, but I didn’t find a direct guide or toggle to force metric name backward compatibility for Mimir data sources.

Hello, is the metric in Mimir still with the _bytes suffix ? Could you check with a direct query with curl ?

Hello @cristiane.borges , for now you can go with workaround
go to dashboard json and replace all jvm_memory_used to jvm_memory_used_bytes


or
try
Use Recording Rules
example

Hi, good afternoon.

The issue is that this doesn’t affect just a single metric—we are dealing with several different Mimir metrics across multiple dashboards.

Please find the metric mapping below for the required updates:

Metric Name Changes

Before (Incorrect) Now (Correct)
jvm_cpu_recent_utilization_ratio jvm_cpu_recent_utilization
jvm_cpu_time_seconds_total jvm_cpu_time
jvm_memory_used_bytes jvm_memory_used
jvm_memory_committed_bytes jvm_memory_committed
jvm_memory_limit_bytes jvm_memory_limit
jvm_memory_used_after_last_gc_bytes jvm_memory_used_after_last_gc
jvm_gc_duration_seconds_count/bucket jvm_gc_duration_count/bucket
jvm_class_unloaded_total jvm_class_unloaded
http_server_request_duration_seconds_* http_server_request_duration_*
processedSpans_total / processedLogs_total processedSpans / processedLogs
queueSize_ratio queueSize

(.. more metric)

Hi, good afternoon.

Yes, but the problem is that these nomenclatures shouldn’t have been changed in the first place. Otherwise, I will have to completely rebuild all the dashboards.

Metric Name Changes

Before (Incorrect) Now (Correct)
jvm_cpu_recent_utilization_ratio jvm_cpu_recent_utilization
jvm_cpu_time_seconds_total jvm_cpu_time
jvm_memory_used_bytes jvm_memory_used
jvm_memory_committed_bytes jvm_memory_committed
jvm_memory_limit_bytes jvm_memory_limit
jvm_memory_used_after_last_gc_bytes jvm_memory_used_after_last_gc
jvm_gc_duration_seconds_count/bucket jvm_gc_duration_count/bucket
jvm_class_unloaded_total jvm_class_unloaded
http_server_request_duration_seconds_* http_server_request_duration_*
processedSpans_total / processedLogs_total processedSpans / processedLogs
queueSize_ratio queueSize

(.. more metric)

Best regards,

The metric name changes are not caused by Grafana v13 itself - they are coming from an update that likely happened alongside your upgrade.Newer versions dropped the _bytes,_total,_ratio from metric names.
The best solution without touching any of existing dashboards is to use Prometheus recording rules to create backward compatible aliases that map new metric names back to old ones

Create a recording_rules.yml file and all your metric mappings

Then reference it in your Prometheus.yml

Reload Prometheus and all your existing dashboards will start showing data again without changing a single query


The fact that the data changed in Mimir means it is not a problem with Grafana 13. I don’t think Mimir plays with the naming either. It can add suffixes like _total to OTel counters, but it doesn’t remove, especially _byte

Have you updated your pipeline lately?