diff --git a/collector/cpu_linux.go b/collector/cpu_linux.go
index 99cc55aa..2dc8f5f2 100644
--- a/collector/cpu_linux.go
+++ b/collector/cpu_linux.go
@@ -54,7 +54,7 @@ func init() {
 func NewCPUCollector() (Collector, error) {
 	return &cpuCollector{
 		cpu: prometheus.NewDesc(
-			prometheus.BuildFQName(namespace, "", cpuCollectorSubsystem),
+			prometheus.BuildFQName(namespace, cpuCollectorSubsystem, "seconds_total"),
 			"Seconds the cpus spent in each mode.",
 			[]string{"cpu", "mode"}, nil,
 		),
diff --git a/collector/diskstats_linux.go b/collector/diskstats_linux.go
index 8c1e5ccc..c80db4c9 100644
--- a/collector/diskstats_linux.go
+++ b/collector/diskstats_linux.go
@@ -30,17 +30,30 @@ import (
 )
 
 const (
-	diskSubsystem         = "disk"
-	diskSectorSize uint64 = 512
+	diskSubsystem  = "disk"
+	diskSectorSize = 512
 )
 
 var (
 	ignoredDevices = kingpin.Flag("collector.diskstats.ignored-devices", "Regexp of devices to ignore for diskstats.").Default("^(ram|loop|fd|(h|s|v|xv)d[a-z]|nvme\\d+n\\d+p)\\d+$").String()
 )
 
+type typedFactorDesc struct {
+	desc      *prometheus.Desc
+	valueType prometheus.ValueType
+	factor    float64
+}
+
+func (d *typedFactorDesc) mustNewConstMetric(value float64, labels ...string) prometheus.Metric {
+	if d.factor != 0 {
+		value *= d.factor
+	}
+	return prometheus.MustNewConstMetric(d.desc, d.valueType, value, labels...)
+}
+
 type diskstatsCollector struct {
 	ignoredDevicesPattern *regexp.Regexp
-	descs                 []typedDesc
+	descs                 []typedFactorDesc
 }
 
 func init() {
@@ -54,10 +67,10 @@ func NewDiskstatsCollector() (Collector, error) {
 	return &diskstatsCollector{
 		ignoredDevicesPattern: regexp.MustCompile(*ignoredDevices),
 		// Docs from https://www.kernel.org/doc/Documentation/iostats.txt
-		descs: []typedDesc{
+		descs: []typedFactorDesc{
 			{
 				desc: prometheus.NewDesc(
-					prometheus.BuildFQName(namespace, diskSubsystem, "reads_completed"),
+					prometheus.BuildFQName(namespace, diskSubsystem, "reads_completed_total"),
 					"The total number of reads completed successfully.",
 					diskLabelNames,
 					nil,
@@ -65,7 +78,7 @@ func NewDiskstatsCollector() (Collector, error) {
 			},
 			{
 				desc: prometheus.NewDesc(
-					prometheus.BuildFQName(namespace, diskSubsystem, "reads_merged"),
+					prometheus.BuildFQName(namespace, diskSubsystem, "reads_merged_total"),
 					"The total number of reads merged. See https://www.kernel.org/doc/Documentation/iostats.txt.",
 					diskLabelNames,
 					nil,
@@ -73,23 +86,25 @@ func NewDiskstatsCollector() (Collector, error) {
 			},
 			{
 				desc: prometheus.NewDesc(
-					prometheus.BuildFQName(namespace, diskSubsystem, "sectors_read"),
-					"The total number of sectors read successfully.",
+					prometheus.BuildFQName(namespace, diskSubsystem, "read_bytes_total"),
+					"The total number of bytes read successfully.",
 					diskLabelNames,
 					nil,
 				), valueType: prometheus.CounterValue,
+				factor: diskSectorSize,
 			},
 			{
 				desc: prometheus.NewDesc(
-					prometheus.BuildFQName(namespace, diskSubsystem, "read_time_ms"),
+					prometheus.BuildFQName(namespace, diskSubsystem, "read_time_seconds_total"),
 					"The total number of milliseconds spent by all reads.",
 					diskLabelNames,
 					nil,
 				), valueType: prometheus.CounterValue,
+				factor: .001,
 			},
 			{
 				desc: prometheus.NewDesc(
-					prometheus.BuildFQName(namespace, diskSubsystem, "writes_completed"),
+					prometheus.BuildFQName(namespace, diskSubsystem, "writes_completed_total"),
 					"The total number of writes completed successfully.",
 					diskLabelNames,
 					nil,
@@ -97,7 +112,7 @@ func NewDiskstatsCollector() (Collector, error) {
 			},
 			{
 				desc: prometheus.NewDesc(
-					prometheus.BuildFQName(namespace, diskSubsystem, "writes_merged"),
+					prometheus.BuildFQName(namespace, diskSubsystem, "writes_merged_total"),
 					"The number of writes merged. See https://www.kernel.org/doc/Documentation/iostats.txt.",
 					diskLabelNames,
 					nil,
@@ -105,19 +120,21 @@ func NewDiskstatsCollector() (Collector, error) {
 			},
 			{
 				desc: prometheus.NewDesc(
-					prometheus.BuildFQName(namespace, diskSubsystem, "sectors_written"),
-					"The total number of sectors written successfully.",
+					prometheus.BuildFQName(namespace, diskSubsystem, "written_bytes_total"),
+					"The total number of bytes written successfully.",
 					diskLabelNames,
 					nil,
 				), valueType: prometheus.CounterValue,
+				factor: diskSectorSize,
 			},
 			{
 				desc: prometheus.NewDesc(
-					prometheus.BuildFQName(namespace, diskSubsystem, "write_time_ms"),
-					"This is the total number of milliseconds spent by all writes.",
+					prometheus.BuildFQName(namespace, diskSubsystem, "write_time_seconds_total"),
+					"This is the total number of seconds spent by all writes.",
 					diskLabelNames,
 					nil,
 				), valueType: prometheus.CounterValue,
+				factor: .001,
 			},
 			{
 				desc: prometheus.NewDesc(
@@ -129,35 +146,21 @@ func NewDiskstatsCollector() (Collector, error) {
 			},
 			{
 				desc: prometheus.NewDesc(
-					prometheus.BuildFQName(namespace, diskSubsystem, "io_time_ms"),
-					"Total Milliseconds spent doing I/Os.",
+					prometheus.BuildFQName(namespace, diskSubsystem, "io_time_seconds_total"),
+					"Total seconds spent doing I/Os.",
 					diskLabelNames,
 					nil,
 				), valueType: prometheus.CounterValue,
+				factor: .001,
 			},
 			{
 				desc: prometheus.NewDesc(
-					prometheus.BuildFQName(namespace, diskSubsystem, "io_time_weighted"),
-					"The weighted # of milliseconds spent doing I/Os. See https://www.kernel.org/doc/Documentation/iostats.txt.",
-					diskLabelNames,
-					nil,
-				), valueType: prometheus.CounterValue,
-			},
-			{
-				desc: prometheus.NewDesc(
-					prometheus.BuildFQName(namespace, diskSubsystem, "bytes_read"),
-					"The total number of bytes read successfully.",
-					diskLabelNames,
-					nil,
-				), valueType: prometheus.CounterValue,
-			},
-			{
-				desc: prometheus.NewDesc(
-					prometheus.BuildFQName(namespace, diskSubsystem, "bytes_written"),
-					"The total number of bytes written successfully.",
+					prometheus.BuildFQName(namespace, diskSubsystem, "io_time_weighted_seconds_total"),
+					"The weighted # of seconds spent doing I/Os. See https://www.kernel.org/doc/Documentation/iostats.txt.",
 					diskLabelNames,
 					nil,
 				), valueType: prometheus.CounterValue,
+				factor: .001,
 			},
 		},
 	}, nil
@@ -201,15 +204,6 @@ func getDiskStats() (map[string]map[int]string, error) {
 	return parseDiskStats(file)
 }
 
-func convertDiskSectorsToBytes(sectorCount string) (string, error) {
-	sectors, err := strconv.ParseUint(sectorCount, 10, 64)
-	if err != nil {
-		return "", err
-	}
-
-	return strconv.FormatUint(sectors*diskSectorSize, 10), nil
-}
-
 func parseDiskStats(r io.Reader) (map[string]map[int]string, error) {
 	var (
 		diskStats = map[string]map[int]string{}
@@ -226,17 +220,6 @@ func parseDiskStats(r io.Reader) (map[string]map[int]string, error) {
 		for i, v := range parts[3:] {
 			diskStats[dev][i] = v
 		}
-		bytesRead, err := convertDiskSectorsToBytes(diskStats[dev][2])
-		if err != nil {
-			return nil, fmt.Errorf("invalid value for sectors read in %s: %s", procFilePath("diskstats"), scanner.Text())
-		}
-		diskStats[dev][11] = bytesRead
-
-		bytesWritten, err := convertDiskSectorsToBytes(diskStats[dev][6])
-		if err != nil {
-			return nil, fmt.Errorf("invalid value for sectors written in %s: %s", procFilePath("diskstats"), scanner.Text())
-		}
-		diskStats[dev][12] = bytesWritten
 	}
 
 	return diskStats, scanner.Err()
diff --git a/collector/diskstats_linux_test.go b/collector/diskstats_linux_test.go
index 21e53787..405bf281 100644
--- a/collector/diskstats_linux_test.go
+++ b/collector/diskstats_linux_test.go
@@ -37,12 +37,4 @@ func TestDiskStats(t *testing.T) {
 	if want, got := "68", diskStats["mmcblk0p2"][10]; want != got {
 		t.Errorf("want diskstats mmcblk0p2 %s, got %s", want, got)
 	}
-
-	if want, got := "513713216512", diskStats["sda"][11]; want != got {
-		t.Errorf("want diskstats sda read bytes %s, got %s", want, got)
-	}
-
-	if want, got := "258916880384", diskStats["sda"][12]; want != got {
-		t.Errorf("want diskstats sda write bytes %s, got %s", want, got)
-	}
 }
diff --git a/collector/filesystem_common.go b/collector/filesystem_common.go
index ceac815f..47ee4bff 100644
--- a/collector/filesystem_common.go
+++ b/collector/filesystem_common.go
@@ -72,19 +72,19 @@ func NewFilesystemCollector() (Collector, error) {
 	filesystemsTypesPattern := regexp.MustCompile(*ignoredFSTypes)
 
 	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,
 	)
diff --git a/collector/fixtures/e2e-output.txt b/collector/fixtures/e2e-output.txt
index 41b3f162..1610ab60 100644
--- a/collector/fixtures/e2e-output.txt
+++ b/collector/fixtures/e2e-output.txt
@@ -158,9 +158,9 @@ node_bonding_active{master="int"} 1
 node_bonding_slaves{master="bond0"} 0
 node_bonding_slaves{master="dmz"} 2
 node_bonding_slaves{master="int"} 2
-# HELP node_boot_time Node boot time, in unixtime.
-# TYPE node_boot_time gauge
-node_boot_time 1.418183276e+09
+# HELP node_boot_time_seconds Node boot time, in unixtime.
+# TYPE node_boot_time_seconds gauge
+node_boot_time_seconds 1.418183276e+09
 # HELP node_buddyinfo_count Count of free blocks according to size.
 # TYPE node_buddyinfo_count gauge
 node_buddyinfo_count{node="0",size="0",zone="DMA"} 1
@@ -196,75 +196,9 @@ node_buddyinfo_count{node="0",size="8",zone="Normal"} 0
 node_buddyinfo_count{node="0",size="9",zone="DMA"} 1
 node_buddyinfo_count{node="0",size="9",zone="DMA32"} 0
 node_buddyinfo_count{node="0",size="9",zone="Normal"} 0
-# HELP node_context_switches Total number of context switches.
-# TYPE node_context_switches counter
-node_context_switches 3.8014093e+07
-# HELP node_cpu Seconds the cpus spent in each mode.
-# TYPE node_cpu counter
-node_cpu{cpu="cpu0",mode="idle"} 10870.69
-node_cpu{cpu="cpu0",mode="iowait"} 2.2
-node_cpu{cpu="cpu0",mode="irq"} 0.01
-node_cpu{cpu="cpu0",mode="nice"} 0.19
-node_cpu{cpu="cpu0",mode="softirq"} 34.1
-node_cpu{cpu="cpu0",mode="steal"} 0
-node_cpu{cpu="cpu0",mode="system"} 210.45
-node_cpu{cpu="cpu0",mode="user"} 444.9
-node_cpu{cpu="cpu1",mode="idle"} 11107.87
-node_cpu{cpu="cpu1",mode="iowait"} 5.91
-node_cpu{cpu="cpu1",mode="irq"} 0
-node_cpu{cpu="cpu1",mode="nice"} 0.23
-node_cpu{cpu="cpu1",mode="softirq"} 0.46
-node_cpu{cpu="cpu1",mode="steal"} 0
-node_cpu{cpu="cpu1",mode="system"} 164.74
-node_cpu{cpu="cpu1",mode="user"} 478.69
-node_cpu{cpu="cpu2",mode="idle"} 11123.21
-node_cpu{cpu="cpu2",mode="iowait"} 4.41
-node_cpu{cpu="cpu2",mode="irq"} 0
-node_cpu{cpu="cpu2",mode="nice"} 0.36
-node_cpu{cpu="cpu2",mode="softirq"} 3.26
-node_cpu{cpu="cpu2",mode="steal"} 0
-node_cpu{cpu="cpu2",mode="system"} 159.16
-node_cpu{cpu="cpu2",mode="user"} 465.04
-node_cpu{cpu="cpu3",mode="idle"} 11132.3
-node_cpu{cpu="cpu3",mode="iowait"} 5.33
-node_cpu{cpu="cpu3",mode="irq"} 0
-node_cpu{cpu="cpu3",mode="nice"} 1.02
-node_cpu{cpu="cpu3",mode="softirq"} 0.6
-node_cpu{cpu="cpu3",mode="steal"} 0
-node_cpu{cpu="cpu3",mode="system"} 156.83
-node_cpu{cpu="cpu3",mode="user"} 470.54
-node_cpu{cpu="cpu4",mode="idle"} 11403.21
-node_cpu{cpu="cpu4",mode="iowait"} 2.17
-node_cpu{cpu="cpu4",mode="irq"} 0
-node_cpu{cpu="cpu4",mode="nice"} 0.25
-node_cpu{cpu="cpu4",mode="softirq"} 0.08
-node_cpu{cpu="cpu4",mode="steal"} 0
-node_cpu{cpu="cpu4",mode="system"} 107.76
-node_cpu{cpu="cpu4",mode="user"} 284.13
-node_cpu{cpu="cpu5",mode="idle"} 11362.7
-node_cpu{cpu="cpu5",mode="iowait"} 6.72
-node_cpu{cpu="cpu5",mode="irq"} 0
-node_cpu{cpu="cpu5",mode="nice"} 1.01
-node_cpu{cpu="cpu5",mode="softirq"} 0.3
-node_cpu{cpu="cpu5",mode="steal"} 0
-node_cpu{cpu="cpu5",mode="system"} 115.86
-node_cpu{cpu="cpu5",mode="user"} 292.71
-node_cpu{cpu="cpu6",mode="idle"} 11397.21
-node_cpu{cpu="cpu6",mode="iowait"} 3.19
-node_cpu{cpu="cpu6",mode="irq"} 0
-node_cpu{cpu="cpu6",mode="nice"} 0.36
-node_cpu{cpu="cpu6",mode="softirq"} 0.29
-node_cpu{cpu="cpu6",mode="steal"} 0
-node_cpu{cpu="cpu6",mode="system"} 102.76
-node_cpu{cpu="cpu6",mode="user"} 291.52
-node_cpu{cpu="cpu7",mode="idle"} 11392.82
-node_cpu{cpu="cpu7",mode="iowait"} 5.55
-node_cpu{cpu="cpu7",mode="irq"} 0
-node_cpu{cpu="cpu7",mode="nice"} 2.68
-node_cpu{cpu="cpu7",mode="softirq"} 0.31
-node_cpu{cpu="cpu7",mode="steal"} 0
-node_cpu{cpu="cpu7",mode="system"} 101.64
-node_cpu{cpu="cpu7",mode="user"} 290.98
+# HELP node_context_switches_total Total number of context switches.
+# TYPE node_context_switches_total counter
+node_context_switches_total 3.8014093e+07
 # HELP node_cpu_core_throttles_total Number of times this cpu core has been throttled.
 # TYPE node_cpu_core_throttles_total counter
 node_cpu_core_throttles_total{cpu="cpu0"} 5
@@ -306,36 +240,72 @@ node_cpu_guest_seconds_total{cpu="7",mode="user"} 0.09
 # HELP node_cpu_package_throttles_total Number of times this cpu package has been throttled.
 # TYPE node_cpu_package_throttles_total counter
 node_cpu_package_throttles_total{node="0"} 30
-# HELP node_disk_bytes_read The total number of bytes read successfully.
-# TYPE node_disk_bytes_read counter
-node_disk_bytes_read{device="dm-0"} 5.13708655616e+11
-node_disk_bytes_read{device="dm-1"} 1.589248e+06
-node_disk_bytes_read{device="dm-2"} 1.578752e+08
-node_disk_bytes_read{device="dm-3"} 1.98144e+06
-node_disk_bytes_read{device="dm-4"} 529408
-node_disk_bytes_read{device="dm-5"} 4.3150848e+07
-node_disk_bytes_read{device="mmcblk0"} 798720
-node_disk_bytes_read{device="mmcblk0p1"} 81920
-node_disk_bytes_read{device="mmcblk0p2"} 389120
-node_disk_bytes_read{device="nvme0n1"} 2.377714176e+09
-node_disk_bytes_read{device="sda"} 5.13713216512e+11
-node_disk_bytes_read{device="sr0"} 0
-node_disk_bytes_read{device="vda"} 1.6727491584e+10
-# HELP node_disk_bytes_written The total number of bytes written successfully.
-# TYPE node_disk_bytes_written counter
-node_disk_bytes_written{device="dm-0"} 2.5891680256e+11
-node_disk_bytes_written{device="dm-1"} 303104
-node_disk_bytes_written{device="dm-2"} 2.607828992e+09
-node_disk_bytes_written{device="dm-3"} 0
-node_disk_bytes_written{device="dm-4"} 70144
-node_disk_bytes_written{device="dm-5"} 5.89664256e+08
-node_disk_bytes_written{device="mmcblk0"} 0
-node_disk_bytes_written{device="mmcblk0p1"} 0
-node_disk_bytes_written{device="mmcblk0p2"} 0
-node_disk_bytes_written{device="nvme0n1"} 2.0199236096e+10
-node_disk_bytes_written{device="sda"} 2.58916880384e+11
-node_disk_bytes_written{device="sr0"} 0
-node_disk_bytes_written{device="vda"} 1.0938236928e+11
+# HELP node_cpu_seconds_total Seconds the cpus spent in each mode.
+# TYPE node_cpu_seconds_total counter
+node_cpu_seconds_total{cpu="cpu0",mode="idle"} 10870.69
+node_cpu_seconds_total{cpu="cpu0",mode="iowait"} 2.2
+node_cpu_seconds_total{cpu="cpu0",mode="irq"} 0.01
+node_cpu_seconds_total{cpu="cpu0",mode="nice"} 0.19
+node_cpu_seconds_total{cpu="cpu0",mode="softirq"} 34.1
+node_cpu_seconds_total{cpu="cpu0",mode="steal"} 0
+node_cpu_seconds_total{cpu="cpu0",mode="system"} 210.45
+node_cpu_seconds_total{cpu="cpu0",mode="user"} 444.9
+node_cpu_seconds_total{cpu="cpu1",mode="idle"} 11107.87
+node_cpu_seconds_total{cpu="cpu1",mode="iowait"} 5.91
+node_cpu_seconds_total{cpu="cpu1",mode="irq"} 0
+node_cpu_seconds_total{cpu="cpu1",mode="nice"} 0.23
+node_cpu_seconds_total{cpu="cpu1",mode="softirq"} 0.46
+node_cpu_seconds_total{cpu="cpu1",mode="steal"} 0
+node_cpu_seconds_total{cpu="cpu1",mode="system"} 164.74
+node_cpu_seconds_total{cpu="cpu1",mode="user"} 478.69
+node_cpu_seconds_total{cpu="cpu2",mode="idle"} 11123.21
+node_cpu_seconds_total{cpu="cpu2",mode="iowait"} 4.41
+node_cpu_seconds_total{cpu="cpu2",mode="irq"} 0
+node_cpu_seconds_total{cpu="cpu2",mode="nice"} 0.36
+node_cpu_seconds_total{cpu="cpu2",mode="softirq"} 3.26
+node_cpu_seconds_total{cpu="cpu2",mode="steal"} 0
+node_cpu_seconds_total{cpu="cpu2",mode="system"} 159.16
+node_cpu_seconds_total{cpu="cpu2",mode="user"} 465.04
+node_cpu_seconds_total{cpu="cpu3",mode="idle"} 11132.3
+node_cpu_seconds_total{cpu="cpu3",mode="iowait"} 5.33
+node_cpu_seconds_total{cpu="cpu3",mode="irq"} 0
+node_cpu_seconds_total{cpu="cpu3",mode="nice"} 1.02
+node_cpu_seconds_total{cpu="cpu3",mode="softirq"} 0.6
+node_cpu_seconds_total{cpu="cpu3",mode="steal"} 0
+node_cpu_seconds_total{cpu="cpu3",mode="system"} 156.83
+node_cpu_seconds_total{cpu="cpu3",mode="user"} 470.54
+node_cpu_seconds_total{cpu="cpu4",mode="idle"} 11403.21
+node_cpu_seconds_total{cpu="cpu4",mode="iowait"} 2.17
+node_cpu_seconds_total{cpu="cpu4",mode="irq"} 0
+node_cpu_seconds_total{cpu="cpu4",mode="nice"} 0.25
+node_cpu_seconds_total{cpu="cpu4",mode="softirq"} 0.08
+node_cpu_seconds_total{cpu="cpu4",mode="steal"} 0
+node_cpu_seconds_total{cpu="cpu4",mode="system"} 107.76
+node_cpu_seconds_total{cpu="cpu4",mode="user"} 284.13
+node_cpu_seconds_total{cpu="cpu5",mode="idle"} 11362.7
+node_cpu_seconds_total{cpu="cpu5",mode="iowait"} 6.72
+node_cpu_seconds_total{cpu="cpu5",mode="irq"} 0
+node_cpu_seconds_total{cpu="cpu5",mode="nice"} 1.01
+node_cpu_seconds_total{cpu="cpu5",mode="softirq"} 0.3
+node_cpu_seconds_total{cpu="cpu5",mode="steal"} 0
+node_cpu_seconds_total{cpu="cpu5",mode="system"} 115.86
+node_cpu_seconds_total{cpu="cpu5",mode="user"} 292.71
+node_cpu_seconds_total{cpu="cpu6",mode="idle"} 11397.21
+node_cpu_seconds_total{cpu="cpu6",mode="iowait"} 3.19
+node_cpu_seconds_total{cpu="cpu6",mode="irq"} 0
+node_cpu_seconds_total{cpu="cpu6",mode="nice"} 0.36
+node_cpu_seconds_total{cpu="cpu6",mode="softirq"} 0.29
+node_cpu_seconds_total{cpu="cpu6",mode="steal"} 0
+node_cpu_seconds_total{cpu="cpu6",mode="system"} 102.76
+node_cpu_seconds_total{cpu="cpu6",mode="user"} 291.52
+node_cpu_seconds_total{cpu="cpu7",mode="idle"} 11392.82
+node_cpu_seconds_total{cpu="cpu7",mode="iowait"} 5.55
+node_cpu_seconds_total{cpu="cpu7",mode="irq"} 0
+node_cpu_seconds_total{cpu="cpu7",mode="nice"} 2.68
+node_cpu_seconds_total{cpu="cpu7",mode="softirq"} 0.31
+node_cpu_seconds_total{cpu="cpu7",mode="steal"} 0
+node_cpu_seconds_total{cpu="cpu7",mode="system"} 101.64
+node_cpu_seconds_total{cpu="cpu7",mode="user"} 290.98
 # HELP node_disk_io_now The number of I/Os currently in progress.
 # TYPE node_disk_io_now gauge
 node_disk_io_now{device="dm-0"} 0
@@ -351,156 +321,156 @@ node_disk_io_now{device="nvme0n1"} 0
 node_disk_io_now{device="sda"} 0
 node_disk_io_now{device="sr0"} 0
 node_disk_io_now{device="vda"} 0
-# HELP node_disk_io_time_ms Total Milliseconds spent doing I/Os.
-# TYPE node_disk_io_time_ms counter
-node_disk_io_time_ms{device="dm-0"} 1.1325968e+07
-node_disk_io_time_ms{device="dm-1"} 76
-node_disk_io_time_ms{device="dm-2"} 65400
-node_disk_io_time_ms{device="dm-3"} 16
-node_disk_io_time_ms{device="dm-4"} 24
-node_disk_io_time_ms{device="dm-5"} 58848
-node_disk_io_time_ms{device="mmcblk0"} 136
-node_disk_io_time_ms{device="mmcblk0p1"} 24
-node_disk_io_time_ms{device="mmcblk0p2"} 68
-node_disk_io_time_ms{device="nvme0n1"} 222766
-node_disk_io_time_ms{device="sda"} 9.65388e+06
-node_disk_io_time_ms{device="sr0"} 0
-node_disk_io_time_ms{device="vda"} 4.1614592e+07
-# HELP node_disk_io_time_weighted The weighted # of milliseconds spent doing I/Os. See https://www.kernel.org/doc/Documentation/iostats.txt.
-# TYPE node_disk_io_time_weighted counter
-node_disk_io_time_weighted{device="dm-0"} 1.206301256e+09
-node_disk_io_time_weighted{device="dm-1"} 84
-node_disk_io_time_weighted{device="dm-2"} 129416
-node_disk_io_time_weighted{device="dm-3"} 104
-node_disk_io_time_weighted{device="dm-4"} 44
-node_disk_io_time_weighted{device="dm-5"} 105632
-node_disk_io_time_weighted{device="mmcblk0"} 156
-node_disk_io_time_weighted{device="mmcblk0p1"} 24
-node_disk_io_time_weighted{device="mmcblk0p2"} 68
-node_disk_io_time_weighted{device="nvme0n1"} 1.032546e+06
-node_disk_io_time_weighted{device="sda"} 8.2621804e+07
-node_disk_io_time_weighted{device="sr0"} 0
-node_disk_io_time_weighted{device="vda"} 2.077872228e+09
-# HELP node_disk_read_time_ms The total number of milliseconds spent by all reads.
-# TYPE node_disk_read_time_ms counter
-node_disk_read_time_ms{device="dm-0"} 4.6229572e+07
-node_disk_read_time_ms{device="dm-1"} 84
-node_disk_read_time_ms{device="dm-2"} 6536
-node_disk_read_time_ms{device="dm-3"} 104
-node_disk_read_time_ms{device="dm-4"} 28
-node_disk_read_time_ms{device="dm-5"} 924
-node_disk_read_time_ms{device="mmcblk0"} 156
-node_disk_read_time_ms{device="mmcblk0p1"} 24
-node_disk_read_time_ms{device="mmcblk0p2"} 68
-node_disk_read_time_ms{device="nvme0n1"} 21650
-node_disk_read_time_ms{device="sda"} 1.8492372e+07
-node_disk_read_time_ms{device="sr0"} 0
-node_disk_read_time_ms{device="vda"} 8.655768e+06
-# HELP node_disk_reads_completed The total number of reads completed successfully.
-# TYPE node_disk_reads_completed counter
-node_disk_reads_completed{device="dm-0"} 5.9910002e+07
-node_disk_reads_completed{device="dm-1"} 388
-node_disk_reads_completed{device="dm-2"} 11571
-node_disk_reads_completed{device="dm-3"} 3870
-node_disk_reads_completed{device="dm-4"} 392
-node_disk_reads_completed{device="dm-5"} 3729
-node_disk_reads_completed{device="mmcblk0"} 192
-node_disk_reads_completed{device="mmcblk0p1"} 17
-node_disk_reads_completed{device="mmcblk0p2"} 95
-node_disk_reads_completed{device="nvme0n1"} 47114
-node_disk_reads_completed{device="sda"} 2.5354637e+07
-node_disk_reads_completed{device="sr0"} 0
-node_disk_reads_completed{device="vda"} 1.775784e+06
-# HELP node_disk_reads_merged The total number of reads merged. See https://www.kernel.org/doc/Documentation/iostats.txt.
-# TYPE node_disk_reads_merged counter
-node_disk_reads_merged{device="dm-0"} 0
-node_disk_reads_merged{device="dm-1"} 0
-node_disk_reads_merged{device="dm-2"} 0
-node_disk_reads_merged{device="dm-3"} 0
-node_disk_reads_merged{device="dm-4"} 0
-node_disk_reads_merged{device="dm-5"} 0
-node_disk_reads_merged{device="mmcblk0"} 3
-node_disk_reads_merged{device="mmcblk0p1"} 3
-node_disk_reads_merged{device="mmcblk0p2"} 0
-node_disk_reads_merged{device="nvme0n1"} 4
-node_disk_reads_merged{device="sda"} 3.4367663e+07
-node_disk_reads_merged{device="sr0"} 0
-node_disk_reads_merged{device="vda"} 15386
-# HELP node_disk_sectors_read The total number of sectors read successfully.
-# TYPE node_disk_sectors_read counter
-node_disk_sectors_read{device="dm-0"} 1.003337218e+09
-node_disk_sectors_read{device="dm-1"} 3104
-node_disk_sectors_read{device="dm-2"} 308350
-node_disk_sectors_read{device="dm-3"} 3870
-node_disk_sectors_read{device="dm-4"} 1034
-node_disk_sectors_read{device="dm-5"} 84279
-node_disk_sectors_read{device="mmcblk0"} 1560
-node_disk_sectors_read{device="mmcblk0p1"} 160
-node_disk_sectors_read{device="mmcblk0p2"} 760
-node_disk_sectors_read{device="nvme0n1"} 4.643973e+06
-node_disk_sectors_read{device="sda"} 1.003346126e+09
-node_disk_sectors_read{device="sr0"} 0
-node_disk_sectors_read{device="vda"} 3.2670882e+07
-# HELP node_disk_sectors_written The total number of sectors written successfully.
-# TYPE node_disk_sectors_written counter
-node_disk_sectors_written{device="dm-0"} 5.0569688e+08
-node_disk_sectors_written{device="dm-1"} 592
-node_disk_sectors_written{device="dm-2"} 5.093416e+06
-node_disk_sectors_written{device="dm-3"} 0
-node_disk_sectors_written{device="dm-4"} 137
-node_disk_sectors_written{device="dm-5"} 1.151688e+06
-node_disk_sectors_written{device="mmcblk0"} 0
-node_disk_sectors_written{device="mmcblk0p1"} 0
-node_disk_sectors_written{device="mmcblk0p2"} 0
-node_disk_sectors_written{device="nvme0n1"} 3.9451633e+07
-node_disk_sectors_written{device="sda"} 5.05697032e+08
-node_disk_sectors_written{device="sr0"} 0
-node_disk_sectors_written{device="vda"} 2.1363744e+08
-# HELP node_disk_write_time_ms This is the total number of milliseconds spent by all writes.
-# TYPE node_disk_write_time_ms counter
-node_disk_write_time_ms{device="dm-0"} 1.1585578e+09
-node_disk_write_time_ms{device="dm-1"} 0
-node_disk_write_time_ms{device="dm-2"} 122884
-node_disk_write_time_ms{device="dm-3"} 0
-node_disk_write_time_ms{device="dm-4"} 16
-node_disk_write_time_ms{device="dm-5"} 104684
-node_disk_write_time_ms{device="mmcblk0"} 0
-node_disk_write_time_ms{device="mmcblk0p1"} 0
-node_disk_write_time_ms{device="mmcblk0p2"} 0
-node_disk_write_time_ms{device="nvme0n1"} 1.011053e+06
-node_disk_write_time_ms{device="sda"} 6.387796e+07
-node_disk_write_time_ms{device="sr0"} 0
-node_disk_write_time_ms{device="vda"} 2.069221364e+09
-# HELP node_disk_writes_completed The total number of writes completed successfully.
-# TYPE node_disk_writes_completed counter
-node_disk_writes_completed{device="dm-0"} 3.9231014e+07
-node_disk_writes_completed{device="dm-1"} 74
-node_disk_writes_completed{device="dm-2"} 153522
-node_disk_writes_completed{device="dm-3"} 0
-node_disk_writes_completed{device="dm-4"} 38
-node_disk_writes_completed{device="dm-5"} 98918
-node_disk_writes_completed{device="mmcblk0"} 0
-node_disk_writes_completed{device="mmcblk0p1"} 0
-node_disk_writes_completed{device="mmcblk0p2"} 0
-node_disk_writes_completed{device="nvme0n1"} 1.07832e+06
-node_disk_writes_completed{device="sda"} 2.8444756e+07
-node_disk_writes_completed{device="sr0"} 0
-node_disk_writes_completed{device="vda"} 6.038856e+06
-# HELP node_disk_writes_merged The number of writes merged. See https://www.kernel.org/doc/Documentation/iostats.txt.
-# TYPE node_disk_writes_merged counter
-node_disk_writes_merged{device="dm-0"} 0
-node_disk_writes_merged{device="dm-1"} 0
-node_disk_writes_merged{device="dm-2"} 0
-node_disk_writes_merged{device="dm-3"} 0
-node_disk_writes_merged{device="dm-4"} 0
-node_disk_writes_merged{device="dm-5"} 0
-node_disk_writes_merged{device="mmcblk0"} 0
-node_disk_writes_merged{device="mmcblk0p1"} 0
-node_disk_writes_merged{device="mmcblk0p2"} 0
-node_disk_writes_merged{device="nvme0n1"} 43950
-node_disk_writes_merged{device="sda"} 1.1134226e+07
-node_disk_writes_merged{device="sr0"} 0
-node_disk_writes_merged{device="vda"} 2.0711856e+07
+# HELP node_disk_io_time_seconds_total Total seconds spent doing I/Os.
+# TYPE node_disk_io_time_seconds_total counter
+node_disk_io_time_seconds_total{device="dm-0"} 11325.968
+node_disk_io_time_seconds_total{device="dm-1"} 0.076
+node_disk_io_time_seconds_total{device="dm-2"} 65.4
+node_disk_io_time_seconds_total{device="dm-3"} 0.016
+node_disk_io_time_seconds_total{device="dm-4"} 0.024
+node_disk_io_time_seconds_total{device="dm-5"} 58.848
+node_disk_io_time_seconds_total{device="mmcblk0"} 0.136
+node_disk_io_time_seconds_total{device="mmcblk0p1"} 0.024
+node_disk_io_time_seconds_total{device="mmcblk0p2"} 0.068
+node_disk_io_time_seconds_total{device="nvme0n1"} 222.766
+node_disk_io_time_seconds_total{device="sda"} 9653.880000000001
+node_disk_io_time_seconds_total{device="sr0"} 0
+node_disk_io_time_seconds_total{device="vda"} 41614.592000000004
+# HELP node_disk_io_time_weighted_seconds_total The weighted # of seconds spent doing I/Os. See https://www.kernel.org/doc/Documentation/iostats.txt.
+# TYPE node_disk_io_time_weighted_seconds_total counter
+node_disk_io_time_weighted_seconds_total{device="dm-0"} 1.206301256e+06
+node_disk_io_time_weighted_seconds_total{device="dm-1"} 0.084
+node_disk_io_time_weighted_seconds_total{device="dm-2"} 129.416
+node_disk_io_time_weighted_seconds_total{device="dm-3"} 0.10400000000000001
+node_disk_io_time_weighted_seconds_total{device="dm-4"} 0.044
+node_disk_io_time_weighted_seconds_total{device="dm-5"} 105.632
+node_disk_io_time_weighted_seconds_total{device="mmcblk0"} 0.156
+node_disk_io_time_weighted_seconds_total{device="mmcblk0p1"} 0.024
+node_disk_io_time_weighted_seconds_total{device="mmcblk0p2"} 0.068
+node_disk_io_time_weighted_seconds_total{device="nvme0n1"} 1032.546
+node_disk_io_time_weighted_seconds_total{device="sda"} 82621.804
+node_disk_io_time_weighted_seconds_total{device="sr0"} 0
+node_disk_io_time_weighted_seconds_total{device="vda"} 2.0778722280000001e+06
+# HELP node_disk_read_bytes_total The total number of bytes read successfully.
+# TYPE node_disk_read_bytes_total counter
+node_disk_read_bytes_total{device="dm-0"} 5.13708655616e+11
+node_disk_read_bytes_total{device="dm-1"} 1.589248e+06
+node_disk_read_bytes_total{device="dm-2"} 1.578752e+08
+node_disk_read_bytes_total{device="dm-3"} 1.98144e+06
+node_disk_read_bytes_total{device="dm-4"} 529408
+node_disk_read_bytes_total{device="dm-5"} 4.3150848e+07
+node_disk_read_bytes_total{device="mmcblk0"} 798720
+node_disk_read_bytes_total{device="mmcblk0p1"} 81920
+node_disk_read_bytes_total{device="mmcblk0p2"} 389120
+node_disk_read_bytes_total{device="nvme0n1"} 2.377714176e+09
+node_disk_read_bytes_total{device="sda"} 5.13713216512e+11
+node_disk_read_bytes_total{device="sr0"} 0
+node_disk_read_bytes_total{device="vda"} 1.6727491584e+10
+# HELP node_disk_read_time_seconds_total The total number of milliseconds spent by all reads.
+# TYPE node_disk_read_time_seconds_total counter
+node_disk_read_time_seconds_total{device="dm-0"} 46229.572
+node_disk_read_time_seconds_total{device="dm-1"} 0.084
+node_disk_read_time_seconds_total{device="dm-2"} 6.5360000000000005
+node_disk_read_time_seconds_total{device="dm-3"} 0.10400000000000001
+node_disk_read_time_seconds_total{device="dm-4"} 0.028
+node_disk_read_time_seconds_total{device="dm-5"} 0.924
+node_disk_read_time_seconds_total{device="mmcblk0"} 0.156
+node_disk_read_time_seconds_total{device="mmcblk0p1"} 0.024
+node_disk_read_time_seconds_total{device="mmcblk0p2"} 0.068
+node_disk_read_time_seconds_total{device="nvme0n1"} 21.650000000000002
+node_disk_read_time_seconds_total{device="sda"} 18492.372
+node_disk_read_time_seconds_total{device="sr0"} 0
+node_disk_read_time_seconds_total{device="vda"} 8655.768
+# HELP node_disk_reads_completed_total The total number of reads completed successfully.
+# TYPE node_disk_reads_completed_total counter
+node_disk_reads_completed_total{device="dm-0"} 5.9910002e+07
+node_disk_reads_completed_total{device="dm-1"} 388
+node_disk_reads_completed_total{device="dm-2"} 11571
+node_disk_reads_completed_total{device="dm-3"} 3870
+node_disk_reads_completed_total{device="dm-4"} 392
+node_disk_reads_completed_total{device="dm-5"} 3729
+node_disk_reads_completed_total{device="mmcblk0"} 192
+node_disk_reads_completed_total{device="mmcblk0p1"} 17
+node_disk_reads_completed_total{device="mmcblk0p2"} 95
+node_disk_reads_completed_total{device="nvme0n1"} 47114
+node_disk_reads_completed_total{device="sda"} 2.5354637e+07
+node_disk_reads_completed_total{device="sr0"} 0
+node_disk_reads_completed_total{device="vda"} 1.775784e+06
+# HELP node_disk_reads_merged_total The total number of reads merged. See https://www.kernel.org/doc/Documentation/iostats.txt.
+# TYPE node_disk_reads_merged_total counter
+node_disk_reads_merged_total{device="dm-0"} 0
+node_disk_reads_merged_total{device="dm-1"} 0
+node_disk_reads_merged_total{device="dm-2"} 0
+node_disk_reads_merged_total{device="dm-3"} 0
+node_disk_reads_merged_total{device="dm-4"} 0
+node_disk_reads_merged_total{device="dm-5"} 0
+node_disk_reads_merged_total{device="mmcblk0"} 3
+node_disk_reads_merged_total{device="mmcblk0p1"} 3
+node_disk_reads_merged_total{device="mmcblk0p2"} 0
+node_disk_reads_merged_total{device="nvme0n1"} 4
+node_disk_reads_merged_total{device="sda"} 3.4367663e+07
+node_disk_reads_merged_total{device="sr0"} 0
+node_disk_reads_merged_total{device="vda"} 15386
+# HELP node_disk_write_time_seconds_total This is the total number of seconds spent by all writes.
+# TYPE node_disk_write_time_seconds_total counter
+node_disk_write_time_seconds_total{device="dm-0"} 1.1585578e+06
+node_disk_write_time_seconds_total{device="dm-1"} 0
+node_disk_write_time_seconds_total{device="dm-2"} 122.884
+node_disk_write_time_seconds_total{device="dm-3"} 0
+node_disk_write_time_seconds_total{device="dm-4"} 0.016
+node_disk_write_time_seconds_total{device="dm-5"} 104.684
+node_disk_write_time_seconds_total{device="mmcblk0"} 0
+node_disk_write_time_seconds_total{device="mmcblk0p1"} 0
+node_disk_write_time_seconds_total{device="mmcblk0p2"} 0
+node_disk_write_time_seconds_total{device="nvme0n1"} 1011.053
+node_disk_write_time_seconds_total{device="sda"} 63877.96
+node_disk_write_time_seconds_total{device="sr0"} 0
+node_disk_write_time_seconds_total{device="vda"} 2.069221364e+06
+# HELP node_disk_writes_completed_total The total number of writes completed successfully.
+# TYPE node_disk_writes_completed_total counter
+node_disk_writes_completed_total{device="dm-0"} 3.9231014e+07
+node_disk_writes_completed_total{device="dm-1"} 74
+node_disk_writes_completed_total{device="dm-2"} 153522
+node_disk_writes_completed_total{device="dm-3"} 0
+node_disk_writes_completed_total{device="dm-4"} 38
+node_disk_writes_completed_total{device="dm-5"} 98918
+node_disk_writes_completed_total{device="mmcblk0"} 0
+node_disk_writes_completed_total{device="mmcblk0p1"} 0
+node_disk_writes_completed_total{device="mmcblk0p2"} 0
+node_disk_writes_completed_total{device="nvme0n1"} 1.07832e+06
+node_disk_writes_completed_total{device="sda"} 2.8444756e+07
+node_disk_writes_completed_total{device="sr0"} 0
+node_disk_writes_completed_total{device="vda"} 6.038856e+06
+# HELP node_disk_writes_merged_total The number of writes merged. See https://www.kernel.org/doc/Documentation/iostats.txt.
+# TYPE node_disk_writes_merged_total counter
+node_disk_writes_merged_total{device="dm-0"} 0
+node_disk_writes_merged_total{device="dm-1"} 0
+node_disk_writes_merged_total{device="dm-2"} 0
+node_disk_writes_merged_total{device="dm-3"} 0
+node_disk_writes_merged_total{device="dm-4"} 0
+node_disk_writes_merged_total{device="dm-5"} 0
+node_disk_writes_merged_total{device="mmcblk0"} 0
+node_disk_writes_merged_total{device="mmcblk0p1"} 0
+node_disk_writes_merged_total{device="mmcblk0p2"} 0
+node_disk_writes_merged_total{device="nvme0n1"} 43950
+node_disk_writes_merged_total{device="sda"} 1.1134226e+07
+node_disk_writes_merged_total{device="sr0"} 0
+node_disk_writes_merged_total{device="vda"} 2.0711856e+07
+# HELP node_disk_written_bytes_total The total number of bytes written successfully.
+# TYPE node_disk_written_bytes_total counter
+node_disk_written_bytes_total{device="dm-0"} 2.5891680256e+11
+node_disk_written_bytes_total{device="dm-1"} 303104
+node_disk_written_bytes_total{device="dm-2"} 2.607828992e+09
+node_disk_written_bytes_total{device="dm-3"} 0
+node_disk_written_bytes_total{device="dm-4"} 70144
+node_disk_written_bytes_total{device="dm-5"} 5.89664256e+08
+node_disk_written_bytes_total{device="mmcblk0"} 0
+node_disk_written_bytes_total{device="mmcblk0p1"} 0
+node_disk_written_bytes_total{device="mmcblk0p2"} 0
+node_disk_written_bytes_total{device="nvme0n1"} 2.0199236096e+10
+node_disk_written_bytes_total{device="sda"} 2.58916880384e+11
+node_disk_written_bytes_total{device="sr0"} 0
+node_disk_written_bytes_total{device="vda"} 1.0938236928e+11
 # HELP node_drbd_activitylog_writes_total Number of updates of the activity log area of the meta data.
 # TYPE node_drbd_activitylog_writes_total counter
 node_drbd_activitylog_writes_total{device="drbd1"} 1100
@@ -573,9 +543,9 @@ node_filefd_allocated 1024
 # HELP node_filefd_maximum File descriptor statistics: maximum.
 # TYPE node_filefd_maximum gauge
 node_filefd_maximum 1.631329e+06
-# HELP node_forks Total number of forks.
-# TYPE node_forks counter
-node_forks 26442
+# HELP node_forks_total Total number of forks.
+# TYPE node_forks_total counter
+node_forks_total 26442
 # HELP node_hwmon_chip_names Annotation metric for human-readable chip names
 # TYPE node_hwmon_chip_names gauge
 node_hwmon_chip_names{chip="nct6779",chip_name="nct6779"} 1
@@ -847,14 +817,14 @@ node_infiniband_multicast_packets_received_total{device="mlx4_0",port="2"} 0
 # TYPE node_infiniband_multicast_packets_transmitted_total counter
 node_infiniband_multicast_packets_transmitted_total{device="mlx4_0",port="1"} 16
 node_infiniband_multicast_packets_transmitted_total{device="mlx4_0",port="2"} 0
-# HELP node_infiniband_port_data_received_bytes Number of data octets received on all links
-# TYPE node_infiniband_port_data_received_bytes counter
-node_infiniband_port_data_received_bytes{device="mlx4_0",port="1"} 1.8527668e+07
-node_infiniband_port_data_received_bytes{device="mlx4_0",port="2"} 0
-# HELP node_infiniband_port_data_transmitted_bytes Number of data octets transmitted on all links
-# TYPE node_infiniband_port_data_transmitted_bytes counter
-node_infiniband_port_data_transmitted_bytes{device="mlx4_0",port="1"} 1.493376e+07
-node_infiniband_port_data_transmitted_bytes{device="mlx4_0",port="2"} 0
+# HELP node_infiniband_port_data_received_bytes_total Number of data octets received on all links
+# TYPE node_infiniband_port_data_received_bytes_total counter
+node_infiniband_port_data_received_bytes_total{device="mlx4_0",port="1"} 1.8527668e+07
+node_infiniband_port_data_received_bytes_total{device="mlx4_0",port="2"} 0
+# HELP node_infiniband_port_data_transmitted_bytes_total Number of data octets transmitted on all links
+# TYPE node_infiniband_port_data_transmitted_bytes_total counter
+node_infiniband_port_data_transmitted_bytes_total{device="mlx4_0",port="1"} 1.493376e+07
+node_infiniband_port_data_transmitted_bytes_total{device="mlx4_0",port="2"} 0
 # HELP node_infiniband_unicast_packets_received_total Number of unicast packets received (including errors)
 # TYPE node_infiniband_unicast_packets_received_total counter
 node_infiniband_unicast_packets_received_total{device="mlx4_0",port="1"} 61148
@@ -863,123 +833,123 @@ node_infiniband_unicast_packets_received_total{device="mlx4_0",port="2"} 0
 # TYPE node_infiniband_unicast_packets_transmitted_total counter
 node_infiniband_unicast_packets_transmitted_total{device="mlx4_0",port="1"} 61239
 node_infiniband_unicast_packets_transmitted_total{device="mlx4_0",port="2"} 0
-# HELP node_interrupts Interrupt details.
-# TYPE node_interrupts counter
-node_interrupts{CPU="0",devices="",info="APIC ICR read retries",type="RTR"} 0
-node_interrupts{CPU="0",devices="",info="Function call interrupts",type="CAL"} 148554
-node_interrupts{CPU="0",devices="",info="IRQ work interrupts",type="IWI"} 1.509379e+06
-node_interrupts{CPU="0",devices="",info="Local timer interrupts",type="LOC"} 1.74326351e+08
-node_interrupts{CPU="0",devices="",info="Machine check exceptions",type="MCE"} 0
-node_interrupts{CPU="0",devices="",info="Machine check polls",type="MCP"} 2406
-node_interrupts{CPU="0",devices="",info="Non-maskable interrupts",type="NMI"} 47
-node_interrupts{CPU="0",devices="",info="Performance monitoring interrupts",type="PMI"} 47
-node_interrupts{CPU="0",devices="",info="Rescheduling interrupts",type="RES"} 1.0847134e+07
-node_interrupts{CPU="0",devices="",info="Spurious interrupts",type="SPU"} 0
-node_interrupts{CPU="0",devices="",info="TLB shootdowns",type="TLB"} 1.0460334e+07
-node_interrupts{CPU="0",devices="",info="Thermal event interrupts",type="TRM"} 0
-node_interrupts{CPU="0",devices="",info="Threshold APIC interrupts",type="THR"} 0
-node_interrupts{CPU="0",devices="acpi",info="IR-IO-APIC-fasteoi",type="9"} 398553
-node_interrupts{CPU="0",devices="ahci",info="IR-PCI-MSI-edge",type="43"} 7.434032e+06
-node_interrupts{CPU="0",devices="dmar0",info="DMAR_MSI-edge",type="40"} 0
-node_interrupts{CPU="0",devices="dmar1",info="DMAR_MSI-edge",type="41"} 0
-node_interrupts{CPU="0",devices="ehci_hcd:usb1, mmc0",info="IR-IO-APIC-fasteoi",type="16"} 328511
-node_interrupts{CPU="0",devices="ehci_hcd:usb2",info="IR-IO-APIC-fasteoi",type="23"} 1.451445e+06
-node_interrupts{CPU="0",devices="i8042",info="IR-IO-APIC-edge",type="1"} 17960
-node_interrupts{CPU="0",devices="i8042",info="IR-IO-APIC-edge",type="12"} 380847
-node_interrupts{CPU="0",devices="i915",info="IR-PCI-MSI-edge",type="44"} 140636
-node_interrupts{CPU="0",devices="iwlwifi",info="IR-PCI-MSI-edge",type="46"} 4.3078464e+07
-node_interrupts{CPU="0",devices="mei_me",info="IR-PCI-MSI-edge",type="45"} 4
-node_interrupts{CPU="0",devices="rtc0",info="IR-IO-APIC-edge",type="8"} 1
-node_interrupts{CPU="0",devices="snd_hda_intel",info="IR-PCI-MSI-edge",type="47"} 350
-node_interrupts{CPU="0",devices="timer",info="IR-IO-APIC-edge",type="0"} 18
-node_interrupts{CPU="0",devices="xhci_hcd",info="IR-PCI-MSI-edge",type="42"} 378324
-node_interrupts{CPU="1",devices="",info="APIC ICR read retries",type="RTR"} 0
-node_interrupts{CPU="1",devices="",info="Function call interrupts",type="CAL"} 157441
-node_interrupts{CPU="1",devices="",info="IRQ work interrupts",type="IWI"} 2.411776e+06
-node_interrupts{CPU="1",devices="",info="Local timer interrupts",type="LOC"} 1.35776678e+08
-node_interrupts{CPU="1",devices="",info="Machine check exceptions",type="MCE"} 0
-node_interrupts{CPU="1",devices="",info="Machine check polls",type="MCP"} 2399
-node_interrupts{CPU="1",devices="",info="Non-maskable interrupts",type="NMI"} 5031
-node_interrupts{CPU="1",devices="",info="Performance monitoring interrupts",type="PMI"} 5031
-node_interrupts{CPU="1",devices="",info="Rescheduling interrupts",type="RES"} 9.111507e+06
-node_interrupts{CPU="1",devices="",info="Spurious interrupts",type="SPU"} 0
-node_interrupts{CPU="1",devices="",info="TLB shootdowns",type="TLB"} 9.918429e+06
-node_interrupts{CPU="1",devices="",info="Thermal event interrupts",type="TRM"} 0
-node_interrupts{CPU="1",devices="",info="Threshold APIC interrupts",type="THR"} 0
-node_interrupts{CPU="1",devices="acpi",info="IR-IO-APIC-fasteoi",type="9"} 2320
-node_interrupts{CPU="1",devices="ahci",info="IR-PCI-MSI-edge",type="43"} 8.092205e+06
-node_interrupts{CPU="1",devices="dmar0",info="DMAR_MSI-edge",type="40"} 0
-node_interrupts{CPU="1",devices="dmar1",info="DMAR_MSI-edge",type="41"} 0
-node_interrupts{CPU="1",devices="ehci_hcd:usb1, mmc0",info="IR-IO-APIC-fasteoi",type="16"} 322879
-node_interrupts{CPU="1",devices="ehci_hcd:usb2",info="IR-IO-APIC-fasteoi",type="23"} 3.333499e+06
-node_interrupts{CPU="1",devices="i8042",info="IR-IO-APIC-edge",type="1"} 105
-node_interrupts{CPU="1",devices="i8042",info="IR-IO-APIC-edge",type="12"} 1021
-node_interrupts{CPU="1",devices="i915",info="IR-PCI-MSI-edge",type="44"} 226313
-node_interrupts{CPU="1",devices="iwlwifi",info="IR-PCI-MSI-edge",type="46"} 130
-node_interrupts{CPU="1",devices="mei_me",info="IR-PCI-MSI-edge",type="45"} 22
-node_interrupts{CPU="1",devices="rtc0",info="IR-IO-APIC-edge",type="8"} 0
-node_interrupts{CPU="1",devices="snd_hda_intel",info="IR-PCI-MSI-edge",type="47"} 224
-node_interrupts{CPU="1",devices="timer",info="IR-IO-APIC-edge",type="0"} 0
-node_interrupts{CPU="1",devices="xhci_hcd",info="IR-PCI-MSI-edge",type="42"} 1.734637e+06
-node_interrupts{CPU="2",devices="",info="APIC ICR read retries",type="RTR"} 0
-node_interrupts{CPU="2",devices="",info="Function call interrupts",type="CAL"} 142912
-node_interrupts{CPU="2",devices="",info="IRQ work interrupts",type="IWI"} 1.512975e+06
-node_interrupts{CPU="2",devices="",info="Local timer interrupts",type="LOC"} 1.68393257e+08
-node_interrupts{CPU="2",devices="",info="Machine check exceptions",type="MCE"} 0
-node_interrupts{CPU="2",devices="",info="Machine check polls",type="MCP"} 2399
-node_interrupts{CPU="2",devices="",info="Non-maskable interrupts",type="NMI"} 6211
-node_interrupts{CPU="2",devices="",info="Performance monitoring interrupts",type="PMI"} 6211
-node_interrupts{CPU="2",devices="",info="Rescheduling interrupts",type="RES"} 1.5999335e+07
-node_interrupts{CPU="2",devices="",info="Spurious interrupts",type="SPU"} 0
-node_interrupts{CPU="2",devices="",info="TLB shootdowns",type="TLB"} 1.0494258e+07
-node_interrupts{CPU="2",devices="",info="Thermal event interrupts",type="TRM"} 0
-node_interrupts{CPU="2",devices="",info="Threshold APIC interrupts",type="THR"} 0
-node_interrupts{CPU="2",devices="acpi",info="IR-IO-APIC-fasteoi",type="9"} 824
-node_interrupts{CPU="2",devices="ahci",info="IR-PCI-MSI-edge",type="43"} 6.478877e+06
-node_interrupts{CPU="2",devices="dmar0",info="DMAR_MSI-edge",type="40"} 0
-node_interrupts{CPU="2",devices="dmar1",info="DMAR_MSI-edge",type="41"} 0
-node_interrupts{CPU="2",devices="ehci_hcd:usb1, mmc0",info="IR-IO-APIC-fasteoi",type="16"} 293782
-node_interrupts{CPU="2",devices="ehci_hcd:usb2",info="IR-IO-APIC-fasteoi",type="23"} 1.092032e+06
-node_interrupts{CPU="2",devices="i8042",info="IR-IO-APIC-edge",type="1"} 28
-node_interrupts{CPU="2",devices="i8042",info="IR-IO-APIC-edge",type="12"} 240
-node_interrupts{CPU="2",devices="i915",info="IR-PCI-MSI-edge",type="44"} 347
-node_interrupts{CPU="2",devices="iwlwifi",info="IR-PCI-MSI-edge",type="46"} 460171
-node_interrupts{CPU="2",devices="mei_me",info="IR-PCI-MSI-edge",type="45"} 0
-node_interrupts{CPU="2",devices="rtc0",info="IR-IO-APIC-edge",type="8"} 0
-node_interrupts{CPU="2",devices="snd_hda_intel",info="IR-PCI-MSI-edge",type="47"} 0
-node_interrupts{CPU="2",devices="timer",info="IR-IO-APIC-edge",type="0"} 0
-node_interrupts{CPU="2",devices="xhci_hcd",info="IR-PCI-MSI-edge",type="42"} 440240
-node_interrupts{CPU="3",devices="",info="APIC ICR read retries",type="RTR"} 0
-node_interrupts{CPU="3",devices="",info="Function call interrupts",type="CAL"} 155528
-node_interrupts{CPU="3",devices="",info="IRQ work interrupts",type="IWI"} 2.428828e+06
-node_interrupts{CPU="3",devices="",info="Local timer interrupts",type="LOC"} 1.30980079e+08
-node_interrupts{CPU="3",devices="",info="Machine check exceptions",type="MCE"} 0
-node_interrupts{CPU="3",devices="",info="Machine check polls",type="MCP"} 2399
-node_interrupts{CPU="3",devices="",info="Non-maskable interrupts",type="NMI"} 4968
-node_interrupts{CPU="3",devices="",info="Performance monitoring interrupts",type="PMI"} 4968
-node_interrupts{CPU="3",devices="",info="Rescheduling interrupts",type="RES"} 7.45726e+06
-node_interrupts{CPU="3",devices="",info="Spurious interrupts",type="SPU"} 0
-node_interrupts{CPU="3",devices="",info="TLB shootdowns",type="TLB"} 1.0345022e+07
-node_interrupts{CPU="3",devices="",info="Thermal event interrupts",type="TRM"} 0
-node_interrupts{CPU="3",devices="",info="Threshold APIC interrupts",type="THR"} 0
-node_interrupts{CPU="3",devices="acpi",info="IR-IO-APIC-fasteoi",type="9"} 863
-node_interrupts{CPU="3",devices="ahci",info="IR-PCI-MSI-edge",type="43"} 7.492252e+06
-node_interrupts{CPU="3",devices="dmar0",info="DMAR_MSI-edge",type="40"} 0
-node_interrupts{CPU="3",devices="dmar1",info="DMAR_MSI-edge",type="41"} 0
-node_interrupts{CPU="3",devices="ehci_hcd:usb1, mmc0",info="IR-IO-APIC-fasteoi",type="16"} 351412
-node_interrupts{CPU="3",devices="ehci_hcd:usb2",info="IR-IO-APIC-fasteoi",type="23"} 2.644609e+06
-node_interrupts{CPU="3",devices="i8042",info="IR-IO-APIC-edge",type="1"} 28
-node_interrupts{CPU="3",devices="i8042",info="IR-IO-APIC-edge",type="12"} 198
-node_interrupts{CPU="3",devices="i915",info="IR-PCI-MSI-edge",type="44"} 633
-node_interrupts{CPU="3",devices="iwlwifi",info="IR-PCI-MSI-edge",type="46"} 290
-node_interrupts{CPU="3",devices="mei_me",info="IR-PCI-MSI-edge",type="45"} 0
-node_interrupts{CPU="3",devices="rtc0",info="IR-IO-APIC-edge",type="8"} 0
-node_interrupts{CPU="3",devices="snd_hda_intel",info="IR-PCI-MSI-edge",type="47"} 0
-node_interrupts{CPU="3",devices="timer",info="IR-IO-APIC-edge",type="0"} 0
-node_interrupts{CPU="3",devices="xhci_hcd",info="IR-PCI-MSI-edge",type="42"} 2.434308e+06
-# HELP node_intr Total number of interrupts serviced.
-# TYPE node_intr counter
-node_intr 8.885917e+06
+# HELP node_interrupts_total Interrupt details.
+# TYPE node_interrupts_total counter
+node_interrupts_total{CPU="0",devices="",info="APIC ICR read retries",type="RTR"} 0
+node_interrupts_total{CPU="0",devices="",info="Function call interrupts",type="CAL"} 148554
+node_interrupts_total{CPU="0",devices="",info="IRQ work interrupts",type="IWI"} 1.509379e+06
+node_interrupts_total{CPU="0",devices="",info="Local timer interrupts",type="LOC"} 1.74326351e+08
+node_interrupts_total{CPU="0",devices="",info="Machine check exceptions",type="MCE"} 0
+node_interrupts_total{CPU="0",devices="",info="Machine check polls",type="MCP"} 2406
+node_interrupts_total{CPU="0",devices="",info="Non-maskable interrupts",type="NMI"} 47
+node_interrupts_total{CPU="0",devices="",info="Performance monitoring interrupts",type="PMI"} 47
+node_interrupts_total{CPU="0",devices="",info="Rescheduling interrupts",type="RES"} 1.0847134e+07
+node_interrupts_total{CPU="0",devices="",info="Spurious interrupts",type="SPU"} 0
+node_interrupts_total{CPU="0",devices="",info="TLB shootdowns",type="TLB"} 1.0460334e+07
+node_interrupts_total{CPU="0",devices="",info="Thermal event interrupts",type="TRM"} 0
+node_interrupts_total{CPU="0",devices="",info="Threshold APIC interrupts",type="THR"} 0
+node_interrupts_total{CPU="0",devices="acpi",info="IR-IO-APIC-fasteoi",type="9"} 398553
+node_interrupts_total{CPU="0",devices="ahci",info="IR-PCI-MSI-edge",type="43"} 7.434032e+06
+node_interrupts_total{CPU="0",devices="dmar0",info="DMAR_MSI-edge",type="40"} 0
+node_interrupts_total{CPU="0",devices="dmar1",info="DMAR_MSI-edge",type="41"} 0
+node_interrupts_total{CPU="0",devices="ehci_hcd:usb1, mmc0",info="IR-IO-APIC-fasteoi",type="16"} 328511
+node_interrupts_total{CPU="0",devices="ehci_hcd:usb2",info="IR-IO-APIC-fasteoi",type="23"} 1.451445e+06
+node_interrupts_total{CPU="0",devices="i8042",info="IR-IO-APIC-edge",type="1"} 17960
+node_interrupts_total{CPU="0",devices="i8042",info="IR-IO-APIC-edge",type="12"} 380847
+node_interrupts_total{CPU="0",devices="i915",info="IR-PCI-MSI-edge",type="44"} 140636
+node_interrupts_total{CPU="0",devices="iwlwifi",info="IR-PCI-MSI-edge",type="46"} 4.3078464e+07
+node_interrupts_total{CPU="0",devices="mei_me",info="IR-PCI-MSI-edge",type="45"} 4
+node_interrupts_total{CPU="0",devices="rtc0",info="IR-IO-APIC-edge",type="8"} 1
+node_interrupts_total{CPU="0",devices="snd_hda_intel",info="IR-PCI-MSI-edge",type="47"} 350
+node_interrupts_total{CPU="0",devices="timer",info="IR-IO-APIC-edge",type="0"} 18
+node_interrupts_total{CPU="0",devices="xhci_hcd",info="IR-PCI-MSI-edge",type="42"} 378324
+node_interrupts_total{CPU="1",devices="",info="APIC ICR read retries",type="RTR"} 0
+node_interrupts_total{CPU="1",devices="",info="Function call interrupts",type="CAL"} 157441
+node_interrupts_total{CPU="1",devices="",info="IRQ work interrupts",type="IWI"} 2.411776e+06
+node_interrupts_total{CPU="1",devices="",info="Local timer interrupts",type="LOC"} 1.35776678e+08
+node_interrupts_total{CPU="1",devices="",info="Machine check exceptions",type="MCE"} 0
+node_interrupts_total{CPU="1",devices="",info="Machine check polls",type="MCP"} 2399
+node_interrupts_total{CPU="1",devices="",info="Non-maskable interrupts",type="NMI"} 5031
+node_interrupts_total{CPU="1",devices="",info="Performance monitoring interrupts",type="PMI"} 5031
+node_interrupts_total{CPU="1",devices="",info="Rescheduling interrupts",type="RES"} 9.111507e+06
+node_interrupts_total{CPU="1",devices="",info="Spurious interrupts",type="SPU"} 0
+node_interrupts_total{CPU="1",devices="",info="TLB shootdowns",type="TLB"} 9.918429e+06
+node_interrupts_total{CPU="1",devices="",info="Thermal event interrupts",type="TRM"} 0
+node_interrupts_total{CPU="1",devices="",info="Threshold APIC interrupts",type="THR"} 0
+node_interrupts_total{CPU="1",devices="acpi",info="IR-IO-APIC-fasteoi",type="9"} 2320
+node_interrupts_total{CPU="1",devices="ahci",info="IR-PCI-MSI-edge",type="43"} 8.092205e+06
+node_interrupts_total{CPU="1",devices="dmar0",info="DMAR_MSI-edge",type="40"} 0
+node_interrupts_total{CPU="1",devices="dmar1",info="DMAR_MSI-edge",type="41"} 0
+node_interrupts_total{CPU="1",devices="ehci_hcd:usb1, mmc0",info="IR-IO-APIC-fasteoi",type="16"} 322879
+node_interrupts_total{CPU="1",devices="ehci_hcd:usb2",info="IR-IO-APIC-fasteoi",type="23"} 3.333499e+06
+node_interrupts_total{CPU="1",devices="i8042",info="IR-IO-APIC-edge",type="1"} 105
+node_interrupts_total{CPU="1",devices="i8042",info="IR-IO-APIC-edge",type="12"} 1021
+node_interrupts_total{CPU="1",devices="i915",info="IR-PCI-MSI-edge",type="44"} 226313
+node_interrupts_total{CPU="1",devices="iwlwifi",info="IR-PCI-MSI-edge",type="46"} 130
+node_interrupts_total{CPU="1",devices="mei_me",info="IR-PCI-MSI-edge",type="45"} 22
+node_interrupts_total{CPU="1",devices="rtc0",info="IR-IO-APIC-edge",type="8"} 0
+node_interrupts_total{CPU="1",devices="snd_hda_intel",info="IR-PCI-MSI-edge",type="47"} 224
+node_interrupts_total{CPU="1",devices="timer",info="IR-IO-APIC-edge",type="0"} 0
+node_interrupts_total{CPU="1",devices="xhci_hcd",info="IR-PCI-MSI-edge",type="42"} 1.734637e+06
+node_interrupts_total{CPU="2",devices="",info="APIC ICR read retries",type="RTR"} 0
+node_interrupts_total{CPU="2",devices="",info="Function call interrupts",type="CAL"} 142912
+node_interrupts_total{CPU="2",devices="",info="IRQ work interrupts",type="IWI"} 1.512975e+06
+node_interrupts_total{CPU="2",devices="",info="Local timer interrupts",type="LOC"} 1.68393257e+08
+node_interrupts_total{CPU="2",devices="",info="Machine check exceptions",type="MCE"} 0
+node_interrupts_total{CPU="2",devices="",info="Machine check polls",type="MCP"} 2399
+node_interrupts_total{CPU="2",devices="",info="Non-maskable interrupts",type="NMI"} 6211
+node_interrupts_total{CPU="2",devices="",info="Performance monitoring interrupts",type="PMI"} 6211
+node_interrupts_total{CPU="2",devices="",info="Rescheduling interrupts",type="RES"} 1.5999335e+07
+node_interrupts_total{CPU="2",devices="",info="Spurious interrupts",type="SPU"} 0
+node_interrupts_total{CPU="2",devices="",info="TLB shootdowns",type="TLB"} 1.0494258e+07
+node_interrupts_total{CPU="2",devices="",info="Thermal event interrupts",type="TRM"} 0
+node_interrupts_total{CPU="2",devices="",info="Threshold APIC interrupts",type="THR"} 0
+node_interrupts_total{CPU="2",devices="acpi",info="IR-IO-APIC-fasteoi",type="9"} 824
+node_interrupts_total{CPU="2",devices="ahci",info="IR-PCI-MSI-edge",type="43"} 6.478877e+06
+node_interrupts_total{CPU="2",devices="dmar0",info="DMAR_MSI-edge",type="40"} 0
+node_interrupts_total{CPU="2",devices="dmar1",info="DMAR_MSI-edge",type="41"} 0
+node_interrupts_total{CPU="2",devices="ehci_hcd:usb1, mmc0",info="IR-IO-APIC-fasteoi",type="16"} 293782
+node_interrupts_total{CPU="2",devices="ehci_hcd:usb2",info="IR-IO-APIC-fasteoi",type="23"} 1.092032e+06
+node_interrupts_total{CPU="2",devices="i8042",info="IR-IO-APIC-edge",type="1"} 28
+node_interrupts_total{CPU="2",devices="i8042",info="IR-IO-APIC-edge",type="12"} 240
+node_interrupts_total{CPU="2",devices="i915",info="IR-PCI-MSI-edge",type="44"} 347
+node_interrupts_total{CPU="2",devices="iwlwifi",info="IR-PCI-MSI-edge",type="46"} 460171
+node_interrupts_total{CPU="2",devices="mei_me",info="IR-PCI-MSI-edge",type="45"} 0
+node_interrupts_total{CPU="2",devices="rtc0",info="IR-IO-APIC-edge",type="8"} 0
+node_interrupts_total{CPU="2",devices="snd_hda_intel",info="IR-PCI-MSI-edge",type="47"} 0
+node_interrupts_total{CPU="2",devices="timer",info="IR-IO-APIC-edge",type="0"} 0
+node_interrupts_total{CPU="2",devices="xhci_hcd",info="IR-PCI-MSI-edge",type="42"} 440240
+node_interrupts_total{CPU="3",devices="",info="APIC ICR read retries",type="RTR"} 0
+node_interrupts_total{CPU="3",devices="",info="Function call interrupts",type="CAL"} 155528
+node_interrupts_total{CPU="3",devices="",info="IRQ work interrupts",type="IWI"} 2.428828e+06
+node_interrupts_total{CPU="3",devices="",info="Local timer interrupts",type="LOC"} 1.30980079e+08
+node_interrupts_total{CPU="3",devices="",info="Machine check exceptions",type="MCE"} 0
+node_interrupts_total{CPU="3",devices="",info="Machine check polls",type="MCP"} 2399
+node_interrupts_total{CPU="3",devices="",info="Non-maskable interrupts",type="NMI"} 4968
+node_interrupts_total{CPU="3",devices="",info="Performance monitoring interrupts",type="PMI"} 4968
+node_interrupts_total{CPU="3",devices="",info="Rescheduling interrupts",type="RES"} 7.45726e+06
+node_interrupts_total{CPU="3",devices="",info="Spurious interrupts",type="SPU"} 0
+node_interrupts_total{CPU="3",devices="",info="TLB shootdowns",type="TLB"} 1.0345022e+07
+node_interrupts_total{CPU="3",devices="",info="Thermal event interrupts",type="TRM"} 0
+node_interrupts_total{CPU="3",devices="",info="Threshold APIC interrupts",type="THR"} 0
+node_interrupts_total{CPU="3",devices="acpi",info="IR-IO-APIC-fasteoi",type="9"} 863
+node_interrupts_total{CPU="3",devices="ahci",info="IR-PCI-MSI-edge",type="43"} 7.492252e+06
+node_interrupts_total{CPU="3",devices="dmar0",info="DMAR_MSI-edge",type="40"} 0
+node_interrupts_total{CPU="3",devices="dmar1",info="DMAR_MSI-edge",type="41"} 0
+node_interrupts_total{CPU="3",devices="ehci_hcd:usb1, mmc0",info="IR-IO-APIC-fasteoi",type="16"} 351412
+node_interrupts_total{CPU="3",devices="ehci_hcd:usb2",info="IR-IO-APIC-fasteoi",type="23"} 2.644609e+06
+node_interrupts_total{CPU="3",devices="i8042",info="IR-IO-APIC-edge",type="1"} 28
+node_interrupts_total{CPU="3",devices="i8042",info="IR-IO-APIC-edge",type="12"} 198
+node_interrupts_total{CPU="3",devices="i915",info="IR-PCI-MSI-edge",type="44"} 633
+node_interrupts_total{CPU="3",devices="iwlwifi",info="IR-PCI-MSI-edge",type="46"} 290
+node_interrupts_total{CPU="3",devices="mei_me",info="IR-PCI-MSI-edge",type="45"} 0
+node_interrupts_total{CPU="3",devices="rtc0",info="IR-IO-APIC-edge",type="8"} 0
+node_interrupts_total{CPU="3",devices="snd_hda_intel",info="IR-PCI-MSI-edge",type="47"} 0
+node_interrupts_total{CPU="3",devices="timer",info="IR-IO-APIC-edge",type="0"} 0
+node_interrupts_total{CPU="3",devices="xhci_hcd",info="IR-PCI-MSI-edge",type="42"} 2.434308e+06
+# HELP node_intr_total Total number of interrupts serviced.
+# TYPE node_intr_total counter
+node_intr_total 8.885917e+06
 # HELP node_ipvs_backend_connections_active The current active connections by local and remote address.
 # TYPE node_ipvs_backend_connections_active gauge
 node_ipvs_backend_connections_active{local_address="192.168.0.22",local_port="3306",proto="TCP",remote_address="192.168.82.22",remote_port="3306"} 248
@@ -1160,48 +1130,48 @@ node_megacli_drive_count{enclosure="32",slot="3",type="Predictive Failure Count"
 node_megacli_drive_temperature_celsius{enclosure="32",slot="0"} 37
 node_megacli_drive_temperature_celsius{enclosure="32",slot="2"} 39
 node_megacli_drive_temperature_celsius{enclosure="32",slot="3"} 38
-# HELP node_memory_Active Memory information field Active.
-# TYPE node_memory_Active gauge
-node_memory_Active 2.287017984e+09
-# HELP node_memory_Active_anon Memory information field Active_anon.
-# TYPE node_memory_Active_anon gauge
-node_memory_Active_anon 2.068484096e+09
-# HELP node_memory_Active_file Memory information field Active_file.
-# TYPE node_memory_Active_file gauge
-node_memory_Active_file 2.18533888e+08
-# HELP node_memory_AnonHugePages Memory information field AnonHugePages.
-# TYPE node_memory_AnonHugePages gauge
-node_memory_AnonHugePages 0
-# HELP node_memory_AnonPages Memory information field AnonPages.
-# TYPE node_memory_AnonPages gauge
-node_memory_AnonPages 2.298032128e+09
-# HELP node_memory_Bounce Memory information field Bounce.
-# TYPE node_memory_Bounce gauge
-node_memory_Bounce 0
-# HELP node_memory_Buffers Memory information field Buffers.
-# TYPE node_memory_Buffers gauge
-node_memory_Buffers 2.256896e+07
-# HELP node_memory_Cached Memory information field Cached.
-# TYPE node_memory_Cached gauge
-node_memory_Cached 9.53229312e+08
-# HELP node_memory_CommitLimit Memory information field CommitLimit.
-# TYPE node_memory_CommitLimit gauge
-node_memory_CommitLimit 6.210940928e+09
-# HELP node_memory_Committed_AS Memory information field Committed_AS.
-# TYPE node_memory_Committed_AS gauge
-node_memory_Committed_AS 8.023486464e+09
-# HELP node_memory_DirectMap2M Memory information field DirectMap2M.
-# TYPE node_memory_DirectMap2M gauge
-node_memory_DirectMap2M 3.787456512e+09
-# HELP node_memory_DirectMap4k Memory information field DirectMap4k.
-# TYPE node_memory_DirectMap4k gauge
-node_memory_DirectMap4k 1.9011584e+08
-# HELP node_memory_Dirty Memory information field Dirty.
-# TYPE node_memory_Dirty gauge
-node_memory_Dirty 1.077248e+06
-# HELP node_memory_HardwareCorrupted Memory information field HardwareCorrupted.
-# TYPE node_memory_HardwareCorrupted gauge
-node_memory_HardwareCorrupted 0
+# HELP node_memory_Active_anon_bytes Memory information field Active_anon_bytes.
+# TYPE node_memory_Active_anon_bytes gauge
+node_memory_Active_anon_bytes 2.068484096e+09
+# HELP node_memory_Active_bytes Memory information field Active_bytes.
+# TYPE node_memory_Active_bytes gauge
+node_memory_Active_bytes 2.287017984e+09
+# HELP node_memory_Active_file_bytes Memory information field Active_file_bytes.
+# TYPE node_memory_Active_file_bytes gauge
+node_memory_Active_file_bytes 2.18533888e+08
+# HELP node_memory_AnonHugePages_bytes Memory information field AnonHugePages_bytes.
+# TYPE node_memory_AnonHugePages_bytes gauge
+node_memory_AnonHugePages_bytes 0
+# HELP node_memory_AnonPages_bytes Memory information field AnonPages_bytes.
+# TYPE node_memory_AnonPages_bytes gauge
+node_memory_AnonPages_bytes 2.298032128e+09
+# HELP node_memory_Bounce_bytes Memory information field Bounce_bytes.
+# TYPE node_memory_Bounce_bytes gauge
+node_memory_Bounce_bytes 0
+# HELP node_memory_Buffers_bytes Memory information field Buffers_bytes.
+# TYPE node_memory_Buffers_bytes gauge
+node_memory_Buffers_bytes 2.256896e+07
+# HELP node_memory_Cached_bytes Memory information field Cached_bytes.
+# TYPE node_memory_Cached_bytes gauge
+node_memory_Cached_bytes 9.53229312e+08
+# HELP node_memory_CommitLimit_bytes Memory information field CommitLimit_bytes.
+# TYPE node_memory_CommitLimit_bytes gauge
+node_memory_CommitLimit_bytes 6.210940928e+09
+# HELP node_memory_Committed_AS_bytes Memory information field Committed_AS_bytes.
+# TYPE node_memory_Committed_AS_bytes gauge
+node_memory_Committed_AS_bytes 8.023486464e+09
+# HELP node_memory_DirectMap2M_bytes Memory information field DirectMap2M_bytes.
+# TYPE node_memory_DirectMap2M_bytes gauge
+node_memory_DirectMap2M_bytes 3.787456512e+09
+# HELP node_memory_DirectMap4k_bytes Memory information field DirectMap4k_bytes.
+# TYPE node_memory_DirectMap4k_bytes gauge
+node_memory_DirectMap4k_bytes 1.9011584e+08
+# HELP node_memory_Dirty_bytes Memory information field Dirty_bytes.
+# TYPE node_memory_Dirty_bytes gauge
+node_memory_Dirty_bytes 1.077248e+06
+# HELP node_memory_HardwareCorrupted_bytes Memory information field HardwareCorrupted_bytes.
+# TYPE node_memory_HardwareCorrupted_bytes gauge
+node_memory_HardwareCorrupted_bytes 0
 # HELP node_memory_HugePages_Free Memory information field HugePages_Free.
 # TYPE node_memory_HugePages_Free gauge
 node_memory_HugePages_Free 0
@@ -1214,78 +1184,78 @@ node_memory_HugePages_Surp 0
 # HELP node_memory_HugePages_Total Memory information field HugePages_Total.
 # TYPE node_memory_HugePages_Total gauge
 node_memory_HugePages_Total 0
-# HELP node_memory_Hugepagesize Memory information field Hugepagesize.
-# TYPE node_memory_Hugepagesize gauge
-node_memory_Hugepagesize 2.097152e+06
-# HELP node_memory_Inactive Memory information field Inactive.
-# TYPE node_memory_Inactive gauge
-node_memory_Inactive 1.053417472e+09
-# HELP node_memory_Inactive_anon Memory information field Inactive_anon.
-# TYPE node_memory_Inactive_anon gauge
-node_memory_Inactive_anon 9.04245248e+08
-# HELP node_memory_Inactive_file Memory information field Inactive_file.
-# TYPE node_memory_Inactive_file gauge
-node_memory_Inactive_file 1.49172224e+08
-# HELP node_memory_KernelStack Memory information field KernelStack.
-# TYPE node_memory_KernelStack gauge
-node_memory_KernelStack 5.9392e+06
-# HELP node_memory_Mapped Memory information field Mapped.
-# TYPE node_memory_Mapped gauge
-node_memory_Mapped 2.4496128e+08
-# HELP node_memory_MemFree Memory information field MemFree.
-# TYPE node_memory_MemFree gauge
-node_memory_MemFree 2.30883328e+08
-# HELP node_memory_MemTotal Memory information field MemTotal.
-# TYPE node_memory_MemTotal gauge
-node_memory_MemTotal 3.831959552e+09
-# HELP node_memory_Mlocked Memory information field Mlocked.
-# TYPE node_memory_Mlocked gauge
-node_memory_Mlocked 32768
-# HELP node_memory_NFS_Unstable Memory information field NFS_Unstable.
-# TYPE node_memory_NFS_Unstable gauge
-node_memory_NFS_Unstable 0
-# HELP node_memory_PageTables Memory information field PageTables.
-# TYPE node_memory_PageTables gauge
-node_memory_PageTables 7.7017088e+07
-# HELP node_memory_SReclaimable Memory information field SReclaimable.
-# TYPE node_memory_SReclaimable gauge
-node_memory_SReclaimable 4.5846528e+07
-# HELP node_memory_SUnreclaim Memory information field SUnreclaim.
-# TYPE node_memory_SUnreclaim gauge
-node_memory_SUnreclaim 5.545984e+07
-# HELP node_memory_Shmem Memory information field Shmem.
-# TYPE node_memory_Shmem gauge
-node_memory_Shmem 6.0809216e+08
-# HELP node_memory_Slab Memory information field Slab.
-# TYPE node_memory_Slab gauge
-node_memory_Slab 1.01306368e+08
-# HELP node_memory_SwapCached Memory information field SwapCached.
-# TYPE node_memory_SwapCached gauge
-node_memory_SwapCached 1.97124096e+08
-# HELP node_memory_SwapFree Memory information field SwapFree.
-# TYPE node_memory_SwapFree gauge
-node_memory_SwapFree 3.23108864e+09
-# HELP node_memory_SwapTotal Memory information field SwapTotal.
-# TYPE node_memory_SwapTotal gauge
-node_memory_SwapTotal 4.2949632e+09
-# HELP node_memory_Unevictable Memory information field Unevictable.
-# TYPE node_memory_Unevictable gauge
-node_memory_Unevictable 32768
-# HELP node_memory_VmallocChunk Memory information field VmallocChunk.
-# TYPE node_memory_VmallocChunk gauge
-node_memory_VmallocChunk 3.5183963009024e+13
-# HELP node_memory_VmallocTotal Memory information field VmallocTotal.
-# TYPE node_memory_VmallocTotal gauge
-node_memory_VmallocTotal 3.5184372087808e+13
-# HELP node_memory_VmallocUsed Memory information field VmallocUsed.
-# TYPE node_memory_VmallocUsed gauge
-node_memory_VmallocUsed 3.6130816e+08
-# HELP node_memory_Writeback Memory information field Writeback.
-# TYPE node_memory_Writeback gauge
-node_memory_Writeback 0
-# HELP node_memory_WritebackTmp Memory information field WritebackTmp.
-# TYPE node_memory_WritebackTmp gauge
-node_memory_WritebackTmp 0
+# HELP node_memory_Hugepagesize_bytes Memory information field Hugepagesize_bytes.
+# TYPE node_memory_Hugepagesize_bytes gauge
+node_memory_Hugepagesize_bytes 2.097152e+06
+# HELP node_memory_Inactive_anon_bytes Memory information field Inactive_anon_bytes.
+# TYPE node_memory_Inactive_anon_bytes gauge
+node_memory_Inactive_anon_bytes 9.04245248e+08
+# HELP node_memory_Inactive_bytes Memory information field Inactive_bytes.
+# TYPE node_memory_Inactive_bytes gauge
+node_memory_Inactive_bytes 1.053417472e+09
+# HELP node_memory_Inactive_file_bytes Memory information field Inactive_file_bytes.
+# TYPE node_memory_Inactive_file_bytes gauge
+node_memory_Inactive_file_bytes 1.49172224e+08
+# HELP node_memory_KernelStack_bytes Memory information field KernelStack_bytes.
+# TYPE node_memory_KernelStack_bytes gauge
+node_memory_KernelStack_bytes 5.9392e+06
+# HELP node_memory_Mapped_bytes Memory information field Mapped_bytes.
+# TYPE node_memory_Mapped_bytes gauge
+node_memory_Mapped_bytes 2.4496128e+08
+# HELP node_memory_MemFree_bytes Memory information field MemFree_bytes.
+# TYPE node_memory_MemFree_bytes gauge
+node_memory_MemFree_bytes 2.30883328e+08
+# HELP node_memory_MemTotal_bytes Memory information field MemTotal_bytes.
+# TYPE node_memory_MemTotal_bytes gauge
+node_memory_MemTotal_bytes 3.831959552e+09
+# HELP node_memory_Mlocked_bytes Memory information field Mlocked_bytes.
+# TYPE node_memory_Mlocked_bytes gauge
+node_memory_Mlocked_bytes 32768
+# HELP node_memory_NFS_Unstable_bytes Memory information field NFS_Unstable_bytes.
+# TYPE node_memory_NFS_Unstable_bytes gauge
+node_memory_NFS_Unstable_bytes 0
+# HELP node_memory_PageTables_bytes Memory information field PageTables_bytes.
+# TYPE node_memory_PageTables_bytes gauge
+node_memory_PageTables_bytes 7.7017088e+07
+# HELP node_memory_SReclaimable_bytes Memory information field SReclaimable_bytes.
+# TYPE node_memory_SReclaimable_bytes gauge
+node_memory_SReclaimable_bytes 4.5846528e+07
+# HELP node_memory_SUnreclaim_bytes Memory information field SUnreclaim_bytes.
+# TYPE node_memory_SUnreclaim_bytes gauge
+node_memory_SUnreclaim_bytes 5.545984e+07
+# HELP node_memory_Shmem_bytes Memory information field Shmem_bytes.
+# TYPE node_memory_Shmem_bytes gauge
+node_memory_Shmem_bytes 6.0809216e+08
+# HELP node_memory_Slab_bytes Memory information field Slab_bytes.
+# TYPE node_memory_Slab_bytes gauge
+node_memory_Slab_bytes 1.01306368e+08
+# HELP node_memory_SwapCached_bytes Memory information field SwapCached_bytes.
+# TYPE node_memory_SwapCached_bytes gauge
+node_memory_SwapCached_bytes 1.97124096e+08
+# HELP node_memory_SwapFree_bytes Memory information field SwapFree_bytes.
+# TYPE node_memory_SwapFree_bytes gauge
+node_memory_SwapFree_bytes 3.23108864e+09
+# HELP node_memory_SwapTotal_bytes Memory information field SwapTotal_bytes.
+# TYPE node_memory_SwapTotal_bytes gauge
+node_memory_SwapTotal_bytes 4.2949632e+09
+# HELP node_memory_Unevictable_bytes Memory information field Unevictable_bytes.
+# TYPE node_memory_Unevictable_bytes gauge
+node_memory_Unevictable_bytes 32768
+# HELP node_memory_VmallocChunk_bytes Memory information field VmallocChunk_bytes.
+# TYPE node_memory_VmallocChunk_bytes gauge
+node_memory_VmallocChunk_bytes 3.5183963009024e+13
+# HELP node_memory_VmallocTotal_bytes Memory information field VmallocTotal_bytes.
+# TYPE node_memory_VmallocTotal_bytes gauge
+node_memory_VmallocTotal_bytes 3.5184372087808e+13
+# HELP node_memory_VmallocUsed_bytes Memory information field VmallocUsed_bytes.
+# TYPE node_memory_VmallocUsed_bytes gauge
+node_memory_VmallocUsed_bytes 3.6130816e+08
+# HELP node_memory_WritebackTmp_bytes Memory information field WritebackTmp_bytes.
+# TYPE node_memory_WritebackTmp_bytes gauge
+node_memory_WritebackTmp_bytes 0
+# HELP node_memory_Writeback_bytes Memory information field Writeback_bytes.
+# TYPE node_memory_Writeback_bytes gauge
+node_memory_Writeback_bytes 0
 # HELP node_memory_numa_Active Memory information field Active.
 # TYPE node_memory_numa_Active gauge
 node_memory_numa_Active{node="0"} 5.58733312e+09
diff --git a/collector/infiniband_linux.go b/collector/infiniband_linux.go
index de8ce195..7c219769 100644
--- a/collector/infiniband_linux.go
+++ b/collector/infiniband_linux.go
@@ -57,8 +57,8 @@ func NewInfiniBandCollector() (Collector, error) {
 		"link_error_recovery_total":           {"link_error_recovery", "Number of times the link successfully recovered from an error state"},
 		"multicast_packets_received_total":    {"multicast_rcv_packets", "Number of multicast packets received (including errors)"},
 		"multicast_packets_transmitted_total": {"multicast_xmit_packets", "Number of multicast packets transmitted (including errors)"},
-		"port_data_received_bytes":            {"port_rcv_data", "Number of data octets received on all links"},
-		"port_data_transmitted_bytes":         {"port_xmit_data", "Number of data octets transmitted on all links"},
+		"port_data_received_bytes_total":      {"port_rcv_data", "Number of data octets received on all links"},
+		"port_data_transmitted_bytes_total":   {"port_xmit_data", "Number of data octets transmitted on all links"},
 		"unicast_packets_received_total":      {"unicast_rcv_packets", "Number of unicast packets received (including errors)"},
 		"unicast_packets_transmitted_total":   {"unicast_xmit_packets", "Number of unicast packets transmitted (including errors)"},
 	}
diff --git a/collector/interrupts_common.go b/collector/interrupts_common.go
index b1c5f27f..9e488299 100644
--- a/collector/interrupts_common.go
+++ b/collector/interrupts_common.go
@@ -30,7 +30,7 @@ func init() {
 func NewInterruptsCollector() (Collector, error) {
 	return &interruptsCollector{
 		desc: typedDesc{prometheus.NewDesc(
-			namespace+"_interrupts",
+			namespace+"_interrupts_total",
 			"Interrupt details.",
 			interruptLabelNames, nil,
 		), prometheus.CounterValue},
diff --git a/collector/meminfo_linux.go b/collector/meminfo_linux.go
index e17626dc..9aac018d 100644
--- a/collector/meminfo_linux.go
+++ b/collector/meminfo_linux.go
@@ -49,16 +49,17 @@ func parseMemInfo(r io.Reader) (map[string]float64, error) {
 		if err != nil {
 			return nil, fmt.Errorf("invalid value in meminfo: %s", err)
 		}
+		key := parts[0][:len(parts[0])-1] // remove trailing : from key
+		// Active(anon) -> Active_anon
+		key = re.ReplaceAllString(key, "_${1}")
 		switch len(parts) {
 		case 2: // no unit
 		case 3: // has unit, we presume kB
 			fv *= 1024
+			key = key + "_bytes"
 		default:
 			return nil, fmt.Errorf("invalid line in meminfo: %s", line)
 		}
-		key := parts[0][:len(parts[0])-1] // remove trailing : from key
-		// Active(anon) -> Active_anon
-		key = re.ReplaceAllString(key, "_${1}")
 		memInfo[key] = fv
 	}
 
diff --git a/collector/meminfo_linux_test.go b/collector/meminfo_linux_test.go
index c42bdf03..dc0aff58 100644
--- a/collector/meminfo_linux_test.go
+++ b/collector/meminfo_linux_test.go
@@ -30,11 +30,11 @@ func TestMemInfo(t *testing.T) {
 		t.Fatal(err)
 	}
 
-	if want, got := 3831959552.0, memInfo["MemTotal"]; want != got {
+	if want, got := 3831959552.0, memInfo["MemTotal_bytes"]; want != got {
 		t.Errorf("want memory total %f, got %f", want, got)
 	}
 
-	if want, got := 3787456512.0, memInfo["DirectMap2M"]; want != got {
+	if want, got := 3787456512.0, memInfo["DirectMap2M_bytes"]; want != got {
 		t.Errorf("want memory directMap2M %f, got %f", want, got)
 	}
 }
diff --git a/collector/meminfo_openbsd.go b/collector/meminfo_openbsd.go
index 00edb163..93511ab9 100644
--- a/collector/meminfo_openbsd.go
+++ b/collector/meminfo_openbsd.go
@@ -47,19 +47,19 @@ func (c *meminfoCollector) getMemInfo() (map[string]float64, error) {
 		return nil, fmt.Errorf("sysctl CTL_VM VM_UVMEXP failed: %v", err)
 	}
 
-       ps := float64(uvmexp.pagesize)
+	ps := float64(uvmexp.pagesize)
 
 	// see uvm(9)
 	return map[string]float64{
-               "active_bytes":                  ps * float64(uvmexp.active),
-               "cache_bytes":                   ps * float64(uvmexp.vnodepages),
-               "free_bytes":                    ps * float64(uvmexp.free),
-               "inactive_bytes":                ps * float64(uvmexp.inactive),
-               "size_bytes":                    ps * float64(uvmexp.npages),
-               "swap_size_bytes":               ps * float64(uvmexp.swpages),
-               "swap_used_bytes":               ps * float64(uvmexp.swpgonly),
-               "swapped_in_pages_bytes_total":  ps * float64(uvmexp.pgswapin),
-               "swapped_out_pages_bytes_total": ps * float64(uvmexp.pgswapout),
-               "wired_bytes":                   ps * float64(uvmexp.wired),
+		"active_bytes":                  ps * float64(uvmexp.active),
+		"cache_bytes":                   ps * float64(uvmexp.vnodepages),
+		"free_bytes":                    ps * float64(uvmexp.free),
+		"inactive_bytes":                ps * float64(uvmexp.inactive),
+		"size_bytes":                    ps * float64(uvmexp.npages),
+		"swap_size_bytes":               ps * float64(uvmexp.swpages),
+		"swap_used_bytes":               ps * float64(uvmexp.swpgonly),
+		"swapped_in_pages_bytes_total":  ps * float64(uvmexp.pgswapin),
+		"swapped_out_pages_bytes_total": ps * float64(uvmexp.pgswapout),
+		"wired_bytes":                   ps * float64(uvmexp.wired),
 	}, nil
 }
diff --git a/collector/stat_linux.go b/collector/stat_linux.go
index 6a0e33f1..290205f5 100644
--- a/collector/stat_linux.go
+++ b/collector/stat_linux.go
@@ -24,7 +24,6 @@ import (
 )
 
 type statCollector struct {
-	cpu          *prometheus.Desc
 	intr         *prometheus.Desc
 	ctxt         *prometheus.Desc
 	forks        *prometheus.Desc
@@ -40,28 +39,23 @@ func init() {
 // NewStatCollector returns a new Collector exposing kernel/system statistics.
 func NewStatCollector() (Collector, error) {
 	return &statCollector{
-		cpu: prometheus.NewDesc(
-			prometheus.BuildFQName(namespace, "", "cpu"),
-			"Seconds the cpus spent in each mode.",
-			[]string{"cpu", "mode"}, nil,
-		),
 		intr: prometheus.NewDesc(
-			prometheus.BuildFQName(namespace, "", "intr"),
+			prometheus.BuildFQName(namespace, "", "intr_total"),
 			"Total number of interrupts serviced.",
 			nil, nil,
 		),
 		ctxt: prometheus.NewDesc(
-			prometheus.BuildFQName(namespace, "", "context_switches"),
+			prometheus.BuildFQName(namespace, "", "context_switches_total"),
 			"Total number of context switches.",
 			nil, nil,
 		),
 		forks: prometheus.NewDesc(
-			prometheus.BuildFQName(namespace, "", "forks"),
+			prometheus.BuildFQName(namespace, "", "forks_total"),
 			"Total number of forks.",
 			nil, nil,
 		),
 		btime: prometheus.NewDesc(
-			prometheus.BuildFQName(namespace, "", "boot_time"),
+			prometheus.BuildFQName(namespace, "", "boot_time_seconds"),
 			"Node boot time, in unixtime.",
 			nil, nil,
 		),
diff --git a/collector/timex.go b/collector/timex.go
index 1042b9e6..6309dff6 100644
--- a/collector/timex.go
+++ b/collector/timex.go
@@ -71,7 +71,7 @@ func NewTimexCollector() (Collector, error) {
 			nil, nil,
 		), prometheus.GaugeValue},
 		freq: typedDesc{prometheus.NewDesc(
-			prometheus.BuildFQName(namespace, subsystem, "frequency_adjustment"),
+			prometheus.BuildFQName(namespace, subsystem, "frequency_adjustment_ratio"),
 			"Local clock frequency adjustment.",
 			nil, nil,
 		), prometheus.GaugeValue},
@@ -101,7 +101,7 @@ func NewTimexCollector() (Collector, error) {
 			nil, nil,
 		), prometheus.GaugeValue},
 		ppsfreq: typedDesc{prometheus.NewDesc(
-			prometheus.BuildFQName(namespace, subsystem, "pps_frequency"),
+			prometheus.BuildFQName(namespace, subsystem, "pps_frequency_hertz"),
 			"Pulse per second frequency.",
 			nil, nil,
 		), prometheus.GaugeValue},
@@ -116,32 +116,32 @@ func NewTimexCollector() (Collector, error) {
 			nil, nil,
 		), prometheus.GaugeValue},
 		stabil: typedDesc{prometheus.NewDesc(
-			prometheus.BuildFQName(namespace, subsystem, "pps_stability"),
-			"Pulse per second stability.",
+			prometheus.BuildFQName(namespace, subsystem, "pps_stability_hertz"),
+			"Pulse per second stability, average of recent frequency changes.",
 			nil, nil,
-		), prometheus.CounterValue},
+		), prometheus.GaugeValue},
 		jitcnt: typedDesc{prometheus.NewDesc(
-			prometheus.BuildFQName(namespace, subsystem, "pps_jitter_count"),
+			prometheus.BuildFQName(namespace, subsystem, "pps_jitter_total"),
 			"Pulse per second count of jitter limit exceeded events.",
 			nil, nil,
 		), prometheus.CounterValue},
 		calcnt: typedDesc{prometheus.NewDesc(
-			prometheus.BuildFQName(namespace, subsystem, "pps_calibration_count"),
+			prometheus.BuildFQName(namespace, subsystem, "pps_calibration_total"),
 			"Pulse per second count of calibration intervals.",
 			nil, nil,
 		), prometheus.CounterValue},
 		errcnt: typedDesc{prometheus.NewDesc(
-			prometheus.BuildFQName(namespace, subsystem, "pps_error_count"),
+			prometheus.BuildFQName(namespace, subsystem, "pps_error_total"),
 			"Pulse per second count of calibration errors.",
 			nil, nil,
 		), prometheus.CounterValue},
 		stbcnt: typedDesc{prometheus.NewDesc(
-			prometheus.BuildFQName(namespace, subsystem, "pps_stability_exceeded_count"),
+			prometheus.BuildFQName(namespace, subsystem, "pps_stability_exceeded_total"),
 			"Pulse per second count of stability limit exceeded events.",
 			nil, nil,
-		), prometheus.GaugeValue},
+		), prometheus.CounterValue},
 		tai: typedDesc{prometheus.NewDesc(
-			prometheus.BuildFQName(namespace, subsystem, "tai_offset"),
+			prometheus.BuildFQName(namespace, subsystem, "tai_offset_seconds"),
 			"International Atomic Time (TAI) offset.",
 			nil, nil,
 		), prometheus.GaugeValue},
@@ -173,18 +173,21 @@ func (c *timexCollector) Update(ch chan<- prometheus.Metric) error {
 	} else {
 		divisor = microSeconds
 	}
+	// See NOTES in adjtimex(2).
+	const ppm16frac = 1000000.0 * 65536.0
+
 	ch <- c.syncStatus.mustNewConstMetric(syncStatus)
 	ch <- c.offset.mustNewConstMetric(float64(timex.Offset) / divisor)
-	ch <- c.freq.mustNewConstMetric(float64(timex.Freq))
+	ch <- c.freq.mustNewConstMetric(1 + float64(timex.Freq)/ppm16frac)
 	ch <- c.maxerror.mustNewConstMetric(float64(timex.Maxerror) / microSeconds)
 	ch <- c.esterror.mustNewConstMetric(float64(timex.Esterror) / microSeconds)
 	ch <- c.status.mustNewConstMetric(float64(timex.Status))
 	ch <- c.constant.mustNewConstMetric(float64(timex.Constant))
 	ch <- c.tick.mustNewConstMetric(float64(timex.Tick) / microSeconds)
-	ch <- c.ppsfreq.mustNewConstMetric(float64(timex.Ppsfreq))
+	ch <- c.ppsfreq.mustNewConstMetric(float64(timex.Ppsfreq) / ppm16frac)
 	ch <- c.jitter.mustNewConstMetric(float64(timex.Jitter) / divisor)
 	ch <- c.shift.mustNewConstMetric(float64(timex.Shift))
-	ch <- c.stabil.mustNewConstMetric(float64(timex.Stabil))
+	ch <- c.stabil.mustNewConstMetric(float64(timex.Stabil) / ppm16frac)
 	ch <- c.jitcnt.mustNewConstMetric(float64(timex.Jitcnt))
 	ch <- c.calcnt.mustNewConstMetric(float64(timex.Calcnt))
 	ch <- c.errcnt.mustNewConstMetric(float64(timex.Errcnt))