Node_Exporter/collector
Benjamin Drung d85cbaa17c
ethtool: Prevent duplicate metric names (#2187)
Sanitizing the metric names can lead to duplicate metric names:

```
caller=level.go:63 level=error caller="error gathering metrics: [from Gatherer #2] collected metric \"node_ethtool_giant_hdr\" { label:<name:\"device\" value:\"ens192\" > untyped:<value:0" msg=" > } was collected before with the same name and label values"
```

Generate a map from the sanitized metric names to the metric names from
ethtool. In case of duplicate sanitized metric names drop both metrics,
because it is unknown which one to take.

Fixes: https://github.com/prometheus/node_exporter/issues/2185
Signed-off-by: Benjamin Drung <benjamin.drung@ionos.com>
2021-11-15 11:22:36 +01:00
..
fixtures ethtool: Prevent duplicate metric names (#2187) 2021-11-15 11:22:36 +01:00
fixtures_bindmount/proc fix issue where rootfs path strips to the empty string (#1464) 2019-09-09 17:39:24 +02:00
fixtures_hidepid/proc Add fallback for missing /proc/1/mounts (#1172) 2018-11-30 14:01:55 +01:00
arp_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
bcache_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
bonding_linux_test.go Rearrange fixtures to match "real" proc and sys. 2015-09-28 13:56:22 +00:00
bonding_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
boot_time_bsd.go Use SysctlTimeval for boottime collector on BSD 2021-11-15 10:50:03 +01:00
boot_time_solaris.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
btrfs_linux_test.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
btrfs_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
buddyinfo.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
collector.go Update logic 2021-06-04 11:35:07 +02:00
conntrack_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
cpu_common.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
cpu_darwin.go Workaround LLVM/Clang 11.0 for Darwin builds (#2200) 2021-11-09 17:52:49 +01:00
cpu_dragonfly_test.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
cpu_dragonfly.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
cpu_freebsd.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
cpu_linux_test.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
cpu_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
cpu_openbsd_amd64.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
cpu_openbsd.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
cpu_solaris.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
cpufreq_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
cpufreq_solaris.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
devstat_dragonfly.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
devstat_freebsd.c Add missing license headers 2017-01-05 06:18:34 +01:00
devstat_freebsd.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
devstat_freebsd.h Add missing license headers 2017-01-05 06:18:34 +01:00
diskstats_common.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
diskstats_darwin.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
diskstats_linux_test.go Refactor diskstats (#2141) 2021-09-28 10:14:12 +02:00
diskstats_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
diskstats_openbsd_amd64.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
diskstats_openbsd.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
dmi.go Add DMI collector (#2131) 2021-10-27 13:56:37 +02:00
drbd_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
drm_linux.go Fixup drm_linux.go build tag. 2021-10-11 15:36:44 +02:00
edac_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
entropy_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
ethtool_linux_test.go ethtool: Add test case with leading spaces (#2186) 2021-10-29 10:55:39 +02:00
ethtool_linux.go ethtool: Prevent duplicate metric names (#2187) 2021-11-15 11:22:36 +01:00
exec_bsd.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
fibrechannel_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
filefd_linux_test.go Fix scanner usage without error handling 2017-02-28 16:04:25 -04:00
filefd_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
filesystem_bsd.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
filesystem_common.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
filesystem_freebsd.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
filesystem_linux_test.go Add ErrorLog plumbing to promhttp 2021-06-03 10:47:41 +02:00
filesystem_linux.go Ignore mountpoints under /run (#2157) 2021-10-27 13:53:26 +02:00
filesystem_openbsd_amd64.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
helper_test.go ethtool: Add test case with leading spaces (#2186) 2021-10-29 10:55:39 +02:00
helper.go Use include/exclude flags for ethtool filtering (#2165) 2021-10-11 15:12:25 +02:00
hwmon_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
infiniband_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
interrupts_common.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
interrupts_linux_test.go Fix off by one in Linux interrupts collector (#721) 2017-11-02 09:59:46 +01:00
interrupts_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
interrupts_openbsd_amd64.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
interrupts_openbsd.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
ipvs_linux_test.go Add ErrorLog plumbing to promhttp 2021-06-03 10:47:41 +02:00
ipvs_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
ksmd_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
kvm_bsd.c Move FreeBSD/DragonflyBSD out of meminfo add kvm. (#547) 2018-01-04 12:23:26 +01:00
kvm_bsd.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
kvm_bsd.h Move FreeBSD/DragonflyBSD out of meminfo add kvm. (#547) 2018-01-04 12:23:26 +01:00
lnstat_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
loadavg_bsd.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
loadavg_linux_test.go Add load5 and load15 to linux load metric 2015-10-17 13:07:39 +00:00
loadavg_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
loadavg_solaris.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
loadavg.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
logind_linux_test.go Fix all open go lint and vet issues 2017-02-28 13:05:38 -04:00
logind_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
mdadm_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
meminfo_darwin.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
meminfo_linux_test.go Make metrics better follow guidelines (#787) 2018-01-17 17:55:55 +01:00
meminfo_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
meminfo_numa_linux_test.go Add Linux NUMA "numastat" metrics (#249) 2016-10-12 13:07:49 +02:00
meminfo_numa_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
meminfo_openbsd_amd64.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
meminfo_openbsd.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
meminfo.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
memory_bsd.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
mountstats_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
netclass_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
netdev_bsd.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
netdev_common.go add node_network_address_info collector (#2105) 2021-09-08 14:50:25 +02:00
netdev_darwin.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
netdev_filter_test.go Move ignore/accept to new netDevFilter struct 2020-08-26 11:33:05 +02:00
netdev_filter.go Move ignore/accept to new netDevFilter struct 2020-08-26 11:33:05 +02:00
netdev_linux_test.go Add ErrorLog plumbing to promhttp 2021-06-03 10:47:41 +02:00
netdev_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
netdev_openbsd_amd64.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
netdev_openbsd.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
netstat_linux_test.go Adds metrics and tests for UDP receive and send buffer errors (#1534) 2020-02-19 14:41:40 +01:00
netstat_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
network_route_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
nfs_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
nfsd_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
ntp.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
nvme_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
os_release_test.go Add os release collector 2021-08-19 14:04:21 +02:00
os_release.go Add os release collector 2021-08-19 14:04:21 +02:00
paths_test.go Replace --collectors.enabled with per-collector flags (#640) 2017-09-28 15:06:26 +02:00
paths.go fix issue where rootfs path strips to the empty string (#1464) 2019-09-09 17:39:24 +02:00
perf_linux_test.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
perf_linux.go collector: replace fmt.Sprintf with strconv.Itoa in perfCollector (#2174) 2021-10-22 21:03:10 +02:00
powersupplyclass_darwin.go darwin powersupply collector (#1777) 2021-10-28 10:22:24 +02:00
powersupplyclass_linux.go darwin powersupply collector (#1777) 2021-10-28 10:22:24 +02:00
powersupplyclass.go darwin powersupply collector (#1777) 2021-10-28 10:22:24 +02:00
pressure_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
processes_linux_test.go support thread state 2021-10-19 11:58:43 +02:00
processes_linux.go support thread state 2021-10-19 11:58:43 +02:00
qdisc_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
rapl_linux.go add path label to rapl collector (#2146) 2021-09-27 22:57:03 +02:00
runit.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
schedstat_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
sockstat_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
softnet_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
stat_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
supervisord.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
sysctl_bsd.go Use SysctlTimeval for boottime collector on BSD 2021-11-15 10:50:03 +01:00
sysctl_openbsd_amd64.go skip null bytes at the end of strings 2020-11-12 23:37:57 +01:00
systemd_linux_test.go Add ErrorLog plumbing to promhttp 2021-06-03 10:47:41 +02:00
systemd_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
tapestats_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
tcpstat_linux_test.go Add gauges for allocated memory for queued UDP and TCP packages (#1503) 2020-03-31 10:46:32 +02:00
tcpstat_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
textfile_test.go collector: Unwrap glob textfile directories (#1985) 2021-10-18 14:05:21 +02:00
textfile.go collector: Unwrap glob textfile directories (#1985) 2021-10-18 14:05:21 +02:00
thermal_darwin.go Fix imports when building on macos (#2180) 2021-10-27 16:56:36 +02:00
thermal_zone_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
time_linux.go Add clocksource metrics to time collector (#2197) 2021-11-12 11:45:31 +01:00
time_other.go Add clocksource metrics to time collector (#2197) 2021-11-12 11:45:31 +01:00
time.go Add clocksource metrics to time collector (#2197) 2021-11-12 11:45:31 +01:00
timex.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
udp_queues_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
uname_bsd.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
uname_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
uname.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
vmstat_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
wifi_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
xfs_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
zfs_freebsd.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
zfs_linux_test.go Correctly disable ZFS for test cases (#2182) 2021-10-28 15:27:15 +02:00
zfs_linux.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
zfs_solaris.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
zfs.go Update go to 1.17 (#2159) 2021-10-03 13:35:24 +02:00
zoneinfo_linux.go Add ErrorLog plumbing to promhttp 2021-06-03 10:47:41 +02:00