Closed gordan-bobic closed 5 months ago
@gordan-bobic When I was doing this to node_exporter, I noticed that there are some metric name changes, e.g.
sizeDesc := prometheus.NewDesc(
- prometheus.BuildFQName(Namespace, subsystem, "size"),
+ prometheus.BuildFQName(namespace, subsystem, "size_bytes"),
"Filesystem size in bytes.",
filesystemLabelNames, nil,
)
freeDesc := prometheus.NewDesc(
- prometheus.BuildFQName(Namespace, subsystem, "free"),
+ prometheus.BuildFQName(namespace, subsystem, "free_bytes"),
"Filesystem free space in bytes.",
filesystemLabelNames, nil,
)
availDesc := prometheus.NewDesc(
- prometheus.BuildFQName(Namespace, subsystem, "avail"),
+ prometheus.BuildFQName(namespace, subsystem, "avail_bytes"),
"Filesystem space available to non-root users in bytes.",
filesystemLabelNames, nil,
)
And there is a good chance that it will happen to mysql_exporter and snmp_exporter too. What should we do about this, if we keep the new names, we can surly replace the metric names in SSM embedded dashboards, but it's not easy to change those dashboards created by users. So should we just keep the old names?
There is likely to be very few if any user generated dashboards for SSM out "in the wild". The only "user generated" dashboards are likely to be our own alerting dashboards.
So it's OK to use the new metric names?
Yes, I think so. How widespread is the change in metric names? Just trying to get a feel for how many dashboards will be broken due to missing old data for new labels after the upgrade.
Not too much, less than 20 I think
OK. Please put the list in the commit message for that merge so it's easy to find for the changelog.
I underestimated it, turns out about 40 metrics changed in node_exporter
and 4 in mysqld_exporter
.
All listed in the commit message.
Our node_exporter and mysqld_exporter are forked years ago. snmp_exporter was forked over a year ago. Rebase them on the latest upstream Prometheus versions. Investigate whether this deprecates some of the changes we have applied in our forks.