Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

NFSd: handle new wdeleg_getattr attribute in /proc/net/rpc/nfsd #574

Merged
merged 1 commit into from
Sep 22, 2023

Conversation

klausman
Copy link
Contributor

This attribute was introduced it v6.6-rc1.

I am unsure if toplevel is the right place for the metric struct-wise, but it is a sole uint64 that doesn't seem to fit any of the other categories in an obvious manner. Unfortunately, I have also been unable to find any documentation of the meaning of this stat.

In the short run, I at leas would like my node-exporters to not just not export any NFSd metrics anymore just because there is one new stat, and this seems the way to approach the matter.

Copy link
Member

@SuperQ SuperQ left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

@SuperQ
Copy link
Member

SuperQ commented Sep 21, 2023

The golangci-lint issue is unrelated.

This attribute was introduced it v6.6-rc1.

Signed-off-by: Tobias Klausmann <[email protected]>
@SuperQ SuperQ merged commit 340d4b8 into prometheus:master Sep 22, 2023
2 checks passed
klausman added a commit to klausman/node_exporter that referenced this pull request Sep 23, 2023
This attribute was introduced it v6.6-rc1.

The relevant changes in procfs were merged here:

prometheus/procfs#574

and are part of procfs v0.11.2

I have also figured out that the stat should be part of the v4 ops
counters struct, but that will need changes to both procfs and this
code. Since people are already using 6.6-rc1, I think it's better to get
the code out there --- even if they don't care about wdeleg_getattr,
currently they get _no_ nfsd stats with 6.6-rc1.

I will make two follow-up PRs to clean this up in the next releases of
procfs and node-exporter.

Signed-off-by: Tobias Klausmann <[email protected]>
klausman added a commit to klausman/node_exporter that referenced this pull request Sep 23, 2023
This attribute was introduced it v6.6-rc1.

The relevant changes in procfs were merged here:

prometheus/procfs#574

and are part of procfs v0.11.2

I have also figured out that the stat should be part of the v4 ops
counters struct, but that will need changes to both procfs and this
code. Since people are already using 6.6-rc1, I think it's better to get
the code out there --- even if they don't care about wdeleg_getattr,
currently they get _no_ nfsd stats with 6.6-rc1.

I will make two follow-up PRs to clean this up in the next releases of
procfs and node-exporter.

Signed-off-by: Tobias Klausmann <[email protected]>
klausman added a commit to klausman/node_exporter that referenced this pull request Sep 23, 2023
This attribute was introduced it v6.6-rc1.

The relevant changes in procfs were merged here:

prometheus/procfs#574

and are part of procfs v0.11.2

I have also figured out that the stat should be part of the v4 ops
counters struct, but that will need changes to both procfs and this
code. Since people are already using 6.6-rc1, I think it's better to get
the code out there --- even if they don't care about wdeleg_getattr,
currently they get _no_ nfsd stats with 6.6-rc1.

I will make two follow-up PRs to clean this up in the next releases of
procfs and node-exporter.

Signed-off-by: Tobias Klausmann <[email protected]>
@klausman klausman deleted the handle66rc1nfsd branch November 13, 2023 08:13
klausman added a commit to klausman/node_exporter that referenced this pull request Nov 13, 2023
This attribute was introduced it v6.6-rc1.

The relevant changes in procfs were merged here:

prometheus/procfs#574

and are part of procfs v0.11.2

I have also figured out that the stat should be part of the v4 ops
counters struct, but that will need changes to both procfs and this
code. Since people are already using 6.6-rc1, I think it's better to get
the code out there --- even if they don't care about wdeleg_getattr,
currently they get _no_ nfsd stats with 6.6-rc1.

I will make two follow-up PRs to clean this up in the next releases of
procfs and node-exporter.

Signed-off-by: Tobias Klausmann <[email protected]>
klausman added a commit to klausman/node_exporter that referenced this pull request Nov 13, 2023
This attribute was introduced it v6.6-rc1.

The relevant changes in procfs were merged here:

prometheus/procfs#574

and are part of procfs v0.11.2

I have also figured out that the stat should be part of the v4 ops
counters struct, but that will need changes to both procfs and this
code. Since people are already using 6.6-rc1, I think it's better to get
the code out there --- even if they don't care about wdeleg_getattr,
currently they get _no_ nfsd stats with 6.6-rc1.

I will make two follow-up PRs to clean this up in the next releases of
procfs and node-exporter.

Signed-off-by: Tobias Klausmann <[email protected]>
klausman added a commit to klausman/node_exporter that referenced this pull request Nov 13, 2023
This attribute was introduced it v6.6-rc1.

The relevant changes in procfs were merged here:

prometheus/procfs#574

and are part of procfs v0.11.2

I have also figured out that the stat should be part of the v4 ops
counters struct, but that will need changes to both procfs and this
code. Since people are already using 6.6-rc1, I think it's better to get
the code out there --- even if they don't care about wdeleg_getattr,
currently they get _no_ nfsd stats with 6.6-rc1.

I will make two follow-up PRs to clean this up in the next releases of
procfs and node-exporter.

Signed-off-by: Tobias Klausmann <[email protected]>
klausman added a commit to klausman/node_exporter that referenced this pull request Nov 13, 2023
This attribute was introduced it v6.6-rc1.

The relevant changes in procfs were merged here:

prometheus/procfs#574

and are part of procfs v0.11.2

I have also figured out that the stat should be part of the v4 ops
counters struct, but that will need changes to both procfs and this
code. Since people are already using 6.6-rc1, I think it's better to get
the code out there --- even if they don't care about wdeleg_getattr,
currently they get _no_ nfsd stats with 6.6-rc1.

I will make two follow-up PRs to clean this up in the next releases of
procfs and node-exporter.

Signed-off-by: Tobias Klausmann <[email protected]>
SuperQ pushed a commit to prometheus/node_exporter that referenced this pull request Nov 14, 2023
This attribute was introduced it v6.6-rc1.

The relevant changes in procfs were merged here:

prometheus/procfs#574

and are part of procfs v0.11.2

I have also figured out that the stat should be part of the v4 ops
counters struct, but that will need changes to both procfs and this
code. Since people are already using 6.6-rc1, I think it's better to get
the code out there --- even if they don't care about wdeleg_getattr,
currently they get _no_ nfsd stats with 6.6-rc1.

I will make two follow-up PRs to clean this up in the next releases of
procfs and node-exporter.

Signed-off-by: Tobias Klausmann <[email protected]>
jaimeyh added a commit to sysdiglabs/node_exporter that referenced this pull request Feb 28, 2024
* Fixup codespell (#2455)

* Fix some mistakes
* Switch to an ignore file.

Signed-off-by: Ben Kochie <[email protected]>

Signed-off-by: Ben Kochie <[email protected]>

* build(deps): bump github.com/jsimonetti/rtnetlink from 1.2.0 to 1.2.2 (#2459)

Bumps [github.com/jsimonetti/rtnetlink](https://github.com/jsimonetti/rtnetlink) from 1.2.0 to 1.2.2.
- [Release notes](https://github.com/jsimonetti/rtnetlink/releases)
- [Commits](https://github.com/jsimonetti/rtnetlink/compare/v1.2.0...v1.2.2)

---
updated-dependencies:
- dependency-name: github.com/jsimonetti/rtnetlink
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump github.com/prometheus/client_golang (#2460)

Bumps [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang) from 1.12.2 to 1.13.0.
- [Release notes](https://github.com/prometheus/client_golang/releases)
- [Changelog](https://github.com/prometheus/client_golang/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prometheus/client_golang/compare/v1.12.2...v1.13.0)

---
updated-dependencies:
- dependency-name: github.com/prometheus/client_golang
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Wrap accesses of c.osFilename and c.osMtime in
mutex to prevent race condition.

Signed-off-by: Robin Nabel <[email protected]>

* feat: add support macos version (#2471)

Signed-off-by: Serhii Freidin <[email protected]>

Signed-off-by: Serhii Freidin <[email protected]>

* Merge metrics descriptions in textfile collector (#2475)

The textfile collector will now provide a unified metric description
(that will look like "Metric read from file/a.prom, file/b.prom")
for metrics collected accross several text-files that don't already
have a description.

Also change the error handling in the textfile collector tests to
ContinueOnError to better mirror the real-life use-case.

Signed-off-by: Guillaume Espanel <[email protected]>

Signed-off-by: Guillaume Espanel <[email protected]>

* Skip zfs iostats (#2451)

skip over the zfs IO metrics if their paths are missing

Signed-off-by: tnextday <[email protected]>

Signed-off-by: tnextday <[email protected]>

* Add btrfs device error stats (#2193)

* Improve metrics filesystem scanning logic
* Makes ioctl syscalls to load the device error stats.
* Adds filesystem mountpoint labels to existing metrics for ease of use.

Signed-off-by: Marcus Cobden <[email protected]>

* Update common Prometheus files (#2473)

Signed-off-by: prombot <[email protected]>

Signed-off-by: prombot <[email protected]>

* Release 1.4.0 (#2478)

* [CHANGE] Merge metrics descriptions in textfile collector #2475
* [FEATURE] [node-mixin] Add darwin dashboard to mixin #2351
* [FEATURE] Add "isolated" metric on cpu collector on linux #2251
* [FEATURE] Add cgroup summary collector #2408
* [FEATURE] Add selinux collector #2205
* [FEATURE] Add slab info collector #2376
* [FEATURE] Add sysctl collector #2425
* [FEATURE] Also track the CPU Spin time for OpenBSD systems #1971
* [FEATURE] Add support for MacOS version #2471
* [ENHANCEMENT] [node-mixin] Add missing selectors #2426
* [ENHANCEMENT] [node-mixin] Change current datasource to grafana's default #2281
* [ENHANCEMENT] [node-mixin] Change disk graph to disk table #2364
* [ENHANCEMENT] [node-mixin] Change io time units to %util #2375
* [ENHANCEMENT] Ad user_wired_bytes and laundry_bytes on *bsd #2266
* [ENHANCEMENT] Add additional vm_stat memory metrics for darwin #2240
* [ENHANCEMENT] Add device filter flags to arp collector #2254
* [ENHANCEMENT] Add diskstats include and exclude device flags #2417
* [ENHANCEMENT] Add node_softirqs_total metric #2221
* [ENHANCEMENT] Add rapl zone name label option #2401
* [ENHANCEMENT] Add slabinfo collector #1799
* [ENHANCEMENT] Allow user to select port on NTP server to query #2270
* [ENHANCEMENT] collector/diskstats: Add labels and metrics from udev #2404
* [ENHANCEMENT] Enable builds against older macOS SDK #2327
* [ENHANCEMENT] qdisk-linux: Add exclude and include flags for interface name #2432
* [ENHANCEMENT] systemd: Expose systemd minor version #2282
* [ENHANCEMENT] Use netlink for tcpstat collector #2322
* [ENHANCEMENT] Use netlink to get netdev stats #2074
* [ENHANCEMENT] Add additional perf counters for stalled frontend/backend cycles #2191
* [ENHANCEMENT] Add btrfs device error stats #2193
* [BUGFIX] [node-mixin] Fix fsSpaceAvailableCriticalThreshold and fsSpaceAvailableWarning #2352
* [BUGFIX] Fix concurrency issue in ethtool collector #2289
* [BUGFIX] Fix concurrency issue in netdev collector #2267
* [BUGFIX] Fix diskstat reads and write metrics for disks with different sector sizes #2311
* [BUGFIX] Fix iostat on macos broken by deprecation warning #2292
* [BUGFIX] Fix NodeFileDescriptorLimit alerts #2340
* [BUGFIX] Sanitize rapl zone names #2299
* [BUGFIX] Add file descriptor close safely in test #2447
* [BUGFIX] Fix race condition in os_release.go #2454
* [BUGFIX] Skip ZFS IO metrics if their paths are missing #2451

Signed-off-by: Ben Kochie <[email protected]>

Signed-off-by: Ben Kochie <[email protected]>

* Archived fixtures/udev similar to fixtures/sys to avoid go-get errors, fixes #2482 (#2485)

Signed-off-by: Darshil Chanpura <[email protected]>

* Fix diskstats exclude flags (#2487)

Correctly handle the new `collector.diskstats.device-exclude` flag to
avoid errors when using the old `collector.diskstats.ignored-devices`
flag.

Fixes: https://github.com/prometheus/node_exporter/issues/2486

Signed-off-by: Ben Kochie <[email protected]>

* Update ISSUE_TEMPLATE.md

Signed-off-by: Johannes 'fish' Ziemke <[email protected]>

* Bump crypto and net CVE-2022-27191 CVE-2022-27664 (#2488)

* Bump crypto and net CVE-2022-27191 CVE-2022-27664

Signed-off-by: Jason Culligan <[email protected]>

* Fix hwmon label sanitizer (#2504)

We don't need to fully sanitize the hwmon label values to metric/label
name strings.
* Just make sure they're valid UTF-8.
* Always included the label metric to avoid group_left failures.

Signed-off-by: Ben Kochie <[email protected]>

Signed-off-by: Ben Kochie <[email protected]>

* build(deps): bump github.com/opencontainers/selinux

Bumps [github.com/opencontainers/selinux](https://github.com/opencontainers/selinux) from 1.10.1 to 1.10.2.
- [Release notes](https://github.com/opencontainers/selinux/releases)
- [Commits](https://github.com/opencontainers/selinux/compare/v1.10.1...v1.10.2)

---
updated-dependencies:
- dependency-name: github.com/opencontainers/selinux
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump github.com/mdlayher/netlink from 1.6.0 to 1.6.2

Bumps [github.com/mdlayher/netlink](https://github.com/mdlayher/netlink) from 1.6.0 to 1.6.2.
- [Release notes](https://github.com/mdlayher/netlink/releases)
- [Changelog](https://github.com/mdlayher/netlink/blob/main/CHANGELOG.md)
- [Commits](https://github.com/mdlayher/netlink/compare/v1.6.0...v1.6.2)

---
updated-dependencies:
- dependency-name: github.com/mdlayher/netlink
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump github.com/coreos/go-systemd/v22 from 22.3.2 to 22.4.0 (#2493)

Bumps [github.com/coreos/go-systemd/v22](https://github.com/coreos/go-systemd) from 22.3.2 to 22.4.0.
- [Release notes](https://github.com/coreos/go-systemd/releases)
- [Commits](https://github.com/coreos/go-systemd/compare/v22.3.2...v22.4.0)

---
updated-dependencies:
- dependency-name: github.com/coreos/go-systemd/v22
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* docs/node-mixin: add fsMointpointSelector to alerts and dashboards (#2446)

* docs/node-mixin: add fsMountpointSelector

This adds the option to add a `mountpoint` selector to filesystem
related alerts. The default is `mountpoint!=""`.

* docs/node-mixins: add fsMountpointSelector to dashboards

Signed-off-by: Jan Fajerski <[email protected]>

* Use native endianness when encoding InetDiagMsg (#2508)

Note however that the InetDiagMsg struct contains a InetDiagSockID
member, which itself contains some members which are explicitly
specified as big-endian in Linux kernel source:

struct inet_diag_sockid {
	__be16	idiag_sport;
	__be16	idiag_dport;
	__be32	idiag_src[4];
	__be32	idiag_dst[4];
	__u32	idiag_if;
	__u32	idiag_cookie[2];
};

node_exporter currently does not use these members for anything, so this
is acceptable (for now).

Signed-off-by: Daniel Swarbrick <[email protected]>

* Add multiple listeners and systemd socket listener activation (#2393)

Update exporter-toolkit to v0.8.1 to enable new listener support.

Signed-off-by: Perry Naseck <[email protected]>

* Add procfs fallback to netdev collector (#2509)

Some systems have broken netlink messages due to patched kernels. Since
these messages can not be parsed, add a flag to fall back to parsing
from `/proc/net/dev`.

Fixes: https://github.com/prometheus/node_exporter/issues/2502

Signed-off-by: Ben Kochie <[email protected]>

Signed-off-by: Ben Kochie <[email protected]>

* build(deps): bump github.com/prometheus/client_model from 0.2.0 to 0.3.0

Bumps [github.com/prometheus/client_model](https://github.com/prometheus/client_model) from 0.2.0 to 0.3.0.
- [Release notes](https://github.com/prometheus/client_model/releases)
- [Commits](https://github.com/prometheus/client_model/compare/v0.2.0...v0.3.0)

---
updated-dependencies:
- dependency-name: github.com/prometheus/client_model
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump github.com/jsimonetti/rtnetlink from 1.2.2 to 1.2.3

Bumps [github.com/jsimonetti/rtnetlink](https://github.com/jsimonetti/rtnetlink) from 1.2.2 to 1.2.3.
- [Release notes](https://github.com/jsimonetti/rtnetlink/releases)
- [Commits](https://github.com/jsimonetti/rtnetlink/compare/v1.2.2...v1.2.3)

---
updated-dependencies:
- dependency-name: github.com/jsimonetti/rtnetlink
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* Fix btrfs device stats always being zero (#2516)

* Respect rootfs path config option in btrfs ioctl
* Fix btrfs device stats always being zero

Signed-off-by: Marcus Cobden <[email protected]>

* readme: remove RHEL/CentOS/Fedora installation info (#2525)

Copr community prometheus-exporters repository is obsoleted.

Signed-off-by: Otto Sabart <[email protected]>

Signed-off-by: Otto Sabart <[email protected]>

* add RTNL version of netclass collector (#2492)

* update rtnetlink package to v1.2.3
* add RTNL version of netclass collector that have all the metrics that netdev collector provides, too.

Signed-off-by: Haoyu Sun <[email protected]>

* update to golang.org/x/sys v0.1.0 (#2524)

Signed-off-by: Manuel Stausberg <[email protected]>

* Refactor netclass_rtnl collector (#2528)

* Refactor netclass_rtnl collector

Merge the netclass_rtnl collector into the netclass collector.
* Disabled by default
* Followup to #2492

Signed-off-by: Ben Kochie <[email protected]>

* Default GOMAXPROCS to 1 (#2530)

Avoid running on all CPUs by limiting the Go runtime to one CPU by
default. Avoids having Go routines schedule on every CPU, driving up the
visible run queue length on high CPU count systems.

This also helps workaround a kernel deadlock issue with reading from
sysfs concurrently.

See:
* https://github.com/prometheus/node_exporter/issues/1880
* https://github.com/prometheus/node_exporter/issues/2500

Signed-off-by: Ben Kochie <[email protected]>

* Bump Go modules (#2531)

* Update all Go modules to latest.
* Update Go minimum version to 1.18.
Signed-off-by: Ben Kochie <[email protected]>

* Release v1.5.0

NOTE: This changes the Go runtime "GOMAXPROCS" to 1. This is done to limit the
  concurrency of the exporter to 1 CPU thread at a time in order to avoid a
  race condition problem in the Linux kernel (#2500) and parallel IO issues
  on nodes with high numbers of CPUs/CPU threads (#1880).

* [CHANGE] Default GOMAXPROCS to 1 #2530
* [FEATURE] Add multiple listeners and systemd socket listener activation #2393
* [ENHANCEMENT] Add RTNL version of netclass collector #2492, #2528
* [BUGFIX] Fix diskstats exclude flags #2487
* [BUGFIX] Bump go/x/crypt and go/x/net #2488
* [BUGFIX] Fix hwmon label sanitizer #2504
* [BUGFIX] Use native endianness when encoding InetDiagMsg #2508
* [BUGFIX] Fix btrfs device stats always being zero #2516
* [BUGFIX] Security: Update exporter-toolkit (CVE-2022-46146) #2531

Signed-off-by: Ben Kochie <[email protected]>

* Correct documentation for --web.config.file flag

The --web.config flag changed to --web.config.file in
440a132c389dddd405b44d2d5e47157d1159e4d0 and was realised in the recent
v1.5.0 release.

Signed-off-by: Joe Groocock <[email protected]>

* Log current value of GOMAXPROCS

With `--runtime.gomaxprocs=0`, the GOMAXPROXS value will default to the
number of logical CPUs. In this case, it is more useful to log the
actual value than the value set by the user via the command-line.

Signed-off-by: Simon Pasquier <[email protected]>

* add options for perf profilers

Signed-off-by: mchtech <[email protected]>

* fix the docker link in the ISSUE_TEMPLATE

Signed-off-by: Yury Vidineev <[email protected]>

* Replace mistaken ) with }, resulting in parsable promql

Signed-off-by: Ryan J. Geyer <[email protected]>

* Update v1.5.0 release notes

Add note about the change to the experimental web flag.

Fixes: https://github.com/prometheus/node_exporter/issues/2535

Signed-off-by: Ben Kochie <[email protected]>

* Update common Prometheus files

Signed-off-by: prombot <[email protected]>

* Migrate arp_linux.go to procfs

Signed-off-by: James Bach <[email protected]>
Signed-off-by: James Bach <[email protected]>
Signed-off-by: jalev <[email protected]>

* Change var name to match previous

Signed-off-by: James Bach <[email protected]>
Signed-off-by: jalev <[email protected]>

* Fix lint issues

Signed-off-by: jalev <[email protected]>

* Bump perf-utils version to 0.6.0

This change updates the perf-utils library to 0.6.0 which has some fixes
for automatically detecting the correct tracefs mountpoint if available.

Signed-off-by: Daniel Hodges <[email protected]>

* Fix thermal_zone collector noise

Add a check for missing/unreadable thermal zone stats and ignore if not
availlable.

Fixes: https://github.com/prometheus/node_exporter/issues/2552

Signed-off-by: Ben Kochie <[email protected]>

* Update common Prometheus files

Signed-off-by: prombot <[email protected]>

* Enable uname collector on NetBSD too

This collector works just fine without any further changes.

Signed-off-by: Benny Siegert <[email protected]>

* build(deps): bump github.com/mdlayher/netlink from 1.7.0 to 1.7.1

Bumps [github.com/mdlayher/netlink](https://github.com/mdlayher/netlink) from 1.7.0 to 1.7.1.
- [Release notes](https://github.com/mdlayher/netlink/releases)
- [Changelog](https://github.com/mdlayher/netlink/blob/main/CHANGELOG.md)
- [Commits](https://github.com/mdlayher/netlink/compare/v1.7.0...v1.7.1)

---
updated-dependencies:
- dependency-name: github.com/mdlayher/netlink
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump github.com/josharian/native from 1.0.0 to 1.1.0

Bumps [github.com/josharian/native](https://github.com/josharian/native) from 1.0.0 to 1.1.0.
- [Release notes](https://github.com/josharian/native/releases)
- [Commits](https://github.com/josharian/native/compare/v1.0.0...v1.1.0)

---
updated-dependencies:
- dependency-name: github.com/josharian/native
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* fix cpustat when some cpus are offline

Signed-off-by: Jia Xin <[email protected]>

* build(deps): bump github.com/prometheus/common from 0.37.0 to 0.39.0

Bumps [github.com/prometheus/common](https://github.com/prometheus/common) from 0.37.0 to 0.39.0.
- [Release notes](https://github.com/prometheus/common/releases)
- [Commits](https://github.com/prometheus/common/compare/v0.37.0...v0.39.0)

---
updated-dependencies:
- dependency-name: github.com/prometheus/common
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Update e2e output for new common version.

Signed-off-by: Ben Kochie <[email protected]>

* Update common Prometheus files

Signed-off-by: prombot <[email protected]>

* NetBSD support for the meminfo collector

This depends on a recent change to golang.org/x/sys that adds a
unix.SysctlUvmexp function.

Signed-off-by: Benny Siegert <[email protected]>

* memory_bsd: Fix a problem fetching the user wire count on FreeBSD

Signed-off-by: David O'Rourke <[email protected]>

* Optimize cpufreq collector

Move metric descriptiions to package vars to avoid allocating them every
time `NewCPUFreqCollector()` is called.

Signed-off-by: Ben Kochie <[email protected]>

* build(deps): bump github.com/hodgesds/perf-utils from 0.6.0 to 0.7.0

Bumps [github.com/hodgesds/perf-utils](https://github.com/hodgesds/perf-utils) from 0.6.0 to 0.7.0.
- [Release notes](https://github.com/hodgesds/perf-utils/releases)
- [Commits](https://github.com/hodgesds/perf-utils/compare/v0.6.0...v0.7.0)

---
updated-dependencies:
- dependency-name: github.com/hodgesds/perf-utils
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Deprecate ntp collector

The ntp collector has always been a source of confusion and problems.
The data it produces is more of a blackbox probe against an NTP server.
The time sync / offset data produced is not what users expect.

Mark this collector as deprecated to be removed in v2.0.0

Signed-off-by: Ben Kochie <[email protected]>

* Update common Prometheus files

Signed-off-by: prombot <[email protected]>

* build(deps): bump golang.org/x/net from 0.4.0 to 0.7.0

Bumps [golang.org/x/net](https://github.com/golang/net) from 0.4.0 to 0.7.0.
- [Release notes](https://github.com/golang/net/releases)
- [Commits](https://github.com/golang/net/compare/v0.4.0...v0.7.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>

* Remove metrics of offline CPUs in CPU collector

Signed-off-by: Haoyu Sun <[email protected]>

* build(deps): bump github.com/jsimonetti/rtnetlink from 1.3.0 to 1.3.1

Bumps [github.com/jsimonetti/rtnetlink](https://github.com/jsimonetti/rtnetlink) from 1.3.0 to 1.3.1.
- [Release notes](https://github.com/jsimonetti/rtnetlink/releases)
- [Commits](https://github.com/jsimonetti/rtnetlink/compare/v1.3.0...v1.3.1)

---
updated-dependencies:
- dependency-name: github.com/jsimonetti/rtnetlink
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump github.com/opencontainers/selinux

Bumps [github.com/opencontainers/selinux](https://github.com/opencontainers/selinux) from 1.10.2 to 1.11.0.
- [Release notes](https://github.com/opencontainers/selinux/releases)
- [Commits](https://github.com/opencontainers/selinux/compare/v1.10.2...v1.11.0)

---
updated-dependencies:
- dependency-name: github.com/opencontainers/selinux
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump golang.org/x/sys from 0.5.0 to 0.6.0

Bumps [golang.org/x/sys](https://github.com/golang/sys) from 0.5.0 to 0.6.0.
- [Release notes](https://github.com/golang/sys/releases)
- [Commits](https://github.com/golang/sys/compare/v0.5.0...v0.6.0)

---
updated-dependencies:
- dependency-name: golang.org/x/sys
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Update exporter-toolkit

* Bump exporter-toolkit to the latest release.
* Use new toolkit landing page function.
* Update kingpin flags.

Signed-off-by: Ben Kochie <[email protected]>

* Bump exporter-toolkit

Pick up the fixes for 32-bit mode and updated HTML template.

Signed-off-by: Ben Kochie <[email protected]>

* Update build

* Update Go to 1.20
* Update golangci-lint.
* Update CI orb.
* Fix staticcheck issue in perf collector.

Signed-off-by: Ben Kochie <[email protected]>

* Allow root path as metrics path. (#2590)

Signed-off-by: LamGC <[email protected]>

* Fix spelling issues

Minor typo fixup.

Signed-off-by: Ben Kochie <[email protected]>

* interrupts_linux: Fix fields on aarch64 (#2631)

* interrupts_linux: Fix fields on aarch64

Fixes #2557

---------

Signed-off-by: Daniël van Eeden <[email protected]>

* feat: add support for cpu freq governor metrics

Signed-off-by: Lukas Coppens <[email protected]>

* feat: add support for cpu freq governor metrics

Signed-off-by: Lukas Coppens <[email protected]>

* Reduce priviliges needed for btrfs device stats

Signed-off-by: Marcus Cobden <[email protected]>

* Update common Prometheus files

Signed-off-by: prombot <[email protected]>

* build(deps): bump github.com/safchain/ethtool from 0.2.0 to 0.3.0

Bumps [github.com/safchain/ethtool](https://github.com/safchain/ethtool) from 0.2.0 to 0.3.0.
- [Release notes](https://github.com/safchain/ethtool/releases)
- [Commits](https://github.com/safchain/ethtool/compare/v0.2.0...v0.3.0)

---
updated-dependencies:
- dependency-name: github.com/safchain/ethtool
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump github.com/prometheus/common from 0.41.0 to 0.42.0

Bumps [github.com/prometheus/common](https://github.com/prometheus/common) from 0.41.0 to 0.42.0.
- [Release notes](https://github.com/prometheus/common/releases)
- [Commits](https://github.com/prometheus/common/compare/v0.41.0...v0.42.0)

---
updated-dependencies:
- dependency-name: github.com/prometheus/common
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* NetBSD support for CPU collector (#2626)

* Added CPU collector for NetBSD to provide load and temperature statistics

---------

Signed-off-by: Matthias Petermann <[email protected]>

* feat: added suspended as a node_zfs_zpool_state (#2449)

Signed-off-by: Pablo Caderno <[email protected]>

* build(deps): bump github.com/mdlayher/netlink from 1.7.1 to 1.7.2

Bumps [github.com/mdlayher/netlink](https://github.com/mdlayher/netlink) from 1.7.1 to 1.7.2.
- [Release notes](https://github.com/mdlayher/netlink/releases)
- [Changelog](https://github.com/mdlayher/netlink/blob/main/CHANGELOG.md)
- [Commits](https://github.com/mdlayher/netlink/compare/v1.7.1...v1.7.2)

---
updated-dependencies:
- dependency-name: github.com/mdlayher/netlink
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump github.com/prometheus/client_golang

Bumps [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang) from 1.14.0 to 1.15.0.
- [Release notes](https://github.com/prometheus/client_golang/releases)
- [Changelog](https://github.com/prometheus/client_golang/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prometheus/client_golang/compare/v1.14.0...v1.15.0)

---
updated-dependencies:
- dependency-name: github.com/prometheus/client_golang
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* doc: added undocumented include and exclude flags (#2670)

* doc: added undocumented exclude flags


Signed-off-by: David Calvert <[email protected]>

* Expose administrative state of network interfaces as 'adminstate'. (#2515)

Signed-off-by: Maximilian Wilhelm <[email protected]>

* Use go-runit fork, mark collector as deprecated

Signed-off-by: Johannes Ziemke <[email protected]>

* build(deps): bump github.com/jsimonetti/rtnetlink from 1.3.1 to 1.3.2 (#2673)

Bumps [github.com/jsimonetti/rtnetlink](https://github.com/jsimonetti/rtnetlink) from 1.3.1 to 1.3.2.
- [Release notes](https://github.com/jsimonetti/rtnetlink/releases)
- [Commits](https://github.com/jsimonetti/rtnetlink/compare/v1.3.1...v1.3.2)

---
updated-dependencies:
- dependency-name: github.com/jsimonetti/rtnetlink
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* docs (node/mixin): fix annotation for Skew alert (#2671)

This updates the annotation for the NodeClockSkewDetected mixin alert to
match the new threshold set.

Original discussion was in this PR: https://github.com/prometheus/node_exporter/pull/1480

I spent an embarrassingly large amount of time trying to figure out how
the heck that alert would mean 300s of clock skew. Turns out the
annotation was just left the same after the threshold change.

Signed-off-by: Will Bollock <[email protected]>

* collector/netisr_freebsd.go: Added collector for netisr subsystem. (#2668)

Signed-off-by: Jonathan Davies <[email protected]>

* Do not hand define struct clockinfo here. Instead use the version from (#2663)

x/sys/unix. The clockinfo struct was altered beginning of 2021 and this
code was not adjusted.

Signed-off-by: Claudio Jeker <[email protected]>

* Fix filesystem collector for OpenBSD to not print loads of zero bytes in name (#2637)

Use the filesystem collector for all OpenBSD archs, there is no reason to
only use it on amd64 systems.

Signed-off-by: Claudio Jeker <[email protected]>

* collector: fix comment and remove redundant parentheses (#2691)

Signed-off-by: cui fliter <[email protected]>

* bcache: remove cache_readaheads_totals metrics #2103 (#2583)

* bcache: remove cache_readaheads_totals metrics #2103

Signed-off-by: Saleh Sal <[email protected]>

* Append bcacheReadaheadMetrics when CacheReadaheads value exists

Signed-off-by: Saleh Sal <[email protected]>

* Update test cases for cachereadahead greater than zero

Signed-off-by: Saleh Sal <[email protected]>

---------

Signed-off-by: Saleh Sal <[email protected]>

* Fix CVE-2022-41723 by upgrading x/net to v0.10.0 (#2694)

Signed-off-by: Nitin Shelke <[email protected]>

* Update e2e output fixtures (#2696)

Fix up correct e2e output for node_power_supply_info.

Signed-off-by: Ben Kochie <[email protected]>

* Update Go modules (#2695)

Update Prometheus modules to latest releases.
* Add missing fixtures for cpus online/offline.

Signed-off-by: Ben Kochie <[email protected]>

* fix(zfs): add `memory_available_bytes`, fix `dbufstats` filename on Linux (#2687)

* Fix zfs memory_available_bytes collector
* Fix zfs dbufstats collector
---------

Signed-off-by: dongjiang1989 <[email protected]>

* Update Go module for ema/qdisc (#2700)

* Update Go module for ema/qdisc

---------

Signed-off-by: jbradleynh <[email protected]>

* Deprecate supervisord collector

Mark the `supervisord` as deprecated. This process
supevisor, like `runit`, is of scope for the node_exporter.

Signed-off-by: Ben Kochie <[email protected]>

* collector/diskstats: Use SCSI_IDENT_SERIAL as serial (#2612)

On most hard drives, `ID_SERIAL_SHORT` and `SCSI_IDENT_SERIAL` are identical,
but on some SAS drives they do differ. In that case, `SCSI_IDENT_SERIAL`
corresponds to the serial number printed on the drive label, and to the value
returned by `smartctl -i`.

So use that value by default for the `serial` label on the `node_disk_info`
metric, and fallback to `ID_SERIAL_SHORT` only if it's undefined.

Signed-off-by: Benoît Knecht <[email protected]>

* softnet: additionals metrics from softnet_data,  (#2592)

* softnet: additionals metrics from softnet_data, https://github.com/prometheus/procfs/pull/473
---------

Signed-off-by: remi <[email protected]>
Signed-off-by: Rémi Jouannet <[email protected]>

* exposing softirq metrics (#2294)

Signed-off-by: abbeywoodyear <[email protected]>

* netlink: read missing attributes from sysfs (#2669)

Read missing dev_id, name_assign_type, and addr_assign_type
from sysfs, since they only take a device-specific lock and
not the whole RTNL lock. This means reading them is much less
impactful on other system processes than many of the other
attributes in sysfs that do take the RTNL lock.

Signed-off-by: Dan Williams <[email protected]>

* Update ansible role in README.md (#2702)

https://github.com/cloudalchemy/ansible-node-exporter has been deprecated

Signed-off-by: Johannes Dilli <[email protected]>

* Release v1.6.0 (#2701)

* [CHANGE] Fix cpustat when some cpus are offline #2318
* [CHANGE] Remove metrics of offline CPUs in CPU collector #2605
* [CHANGE] Deprecate ntp collector #2603
* [CHANGE] Remove bcache `cache_readaheads_totals` metrics #2583
* [CHANGE] Deprecate supervisord collector #2685
* [FEATURE] Enable uname collector on NetBSD #2559
* [FEATURE] NetBSD support for the meminfo collector #2570
* [FEATURE] NetBSD support for CPU collector #2626
* [FEATURE] Add FreeBSD collector for netisr subsystem #2668
* [FEATURE] Add softirqs collector #2669
* [ENHANCEMENT] Add suspended as a `node_zfs_zpool_state` #2449
* [ENHANCEMENT] Add administrative state of Linux network interfaces #2515
* [ENHANCEMENT] Log current value of GOMAXPROCS #2537
* [ENHANCEMENT] Add profiler options for perf collector #2542
* [ENHANCEMENT] Allow root path as metrics path #2590
* [ENHANCEMENT] Add cpu frequency governor metrics #2569
* [ENHANCEMENT] Add new landing page #2622
* [ENHANCEMENT] Reduce privileges needed for btrfs device stats #2634
* [ENHANCEMENT] Add ZFS `memory_available_bytes` #2687
* [ENHANCEMENT] Use `SCSI_IDENT_SERIAL` as serial in diskstats #2612
* [ENHANCEMENT] Read missing from netlink netclass attributes from sysfs #2669
* [BUGFIX] perf: fixes for automatically detecting the correct tracefs mountpoints #2553
* [BUGFIX] Fix `thermal_zone` collector noise @2554
* [BUGFIX] Fix a problem fetching the user wire count on FreeBSD 2584
* [BUGFIX] interrupts: Fix fields on linux aarch64 #2631
* [BUGFIX] Remove metrics of offline CPUs in CPU collector #2605
* [BUGFIX] Fix OpenBSD filesystem collector string parsing #2637
* [BUGFIX] Fix bad reporting of `node_cpu_seconds_total` in OpenBSD #2663

Signed-off-by: Ben Kochie <[email protected]>

* build(deps): bump github.com/beevik/ntp from 0.3.0 to 1.0.0

Bumps [github.com/beevik/ntp](https://github.com/beevik/ntp) from 0.3.0 to 1.0.0.
- [Release notes](https://github.com/beevik/ntp/releases)
- [Changelog](https://github.com/beevik/ntp/blob/main/RELEASE_NOTES.md)
- [Commits](https://github.com/beevik/ntp/compare/v0.3.0...v1.0.0)

---
updated-dependencies:
- dependency-name: github.com/beevik/ntp
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump github.com/prometheus/procfs from 0.10.0 to 0.10.1

Bumps [github.com/prometheus/procfs](https://github.com/prometheus/procfs) from 0.10.0 to 0.10.1.
- [Release notes](https://github.com/prometheus/procfs/releases)
- [Commits](https://github.com/prometheus/procfs/compare/v0.10.0...v0.10.1)

---
updated-dependencies:
- dependency-name: github.com/prometheus/procfs
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump github.com/jsimonetti/rtnetlink from 1.3.2 to 1.3.3

Bumps [github.com/jsimonetti/rtnetlink](https://github.com/jsimonetti/rtnetlink) from 1.3.2 to 1.3.3.
- [Release notes](https://github.com/jsimonetti/rtnetlink/releases)
- [Commits](https://github.com/jsimonetti/rtnetlink/compare/v1.3.2...v1.3.3)

---
updated-dependencies:
- dependency-name: github.com/jsimonetti/rtnetlink
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* Parallelize stat calls in Linux filesystem collector.

This change adds the ability to process multiple stat calls in parallel.
Processing is rate-limited based on the new flag
`collector.filesystem.stat-workers` (default 4).

Caveat: filesystem stats information is no longer in the same order as
returned by `/proc/1/mounts`.  This should not be an issue.

Caveat: This change currently uses unbuffered channels to prove
correctness without reliance on buffers.  Buffered channels will yield
superior performance.

Signed-off-by: Erica Mays <[email protected]>

* fix misspel in CHANGELOG.md (#2717)

Signed-off-by: juzhao <[email protected]>

* Bump wifi Go module (#2719)

Update github.com/mdlayher/wifi to the latest commit.

Signed-off-by: Ben Kochie <[email protected]>

* Bump ethtool library (#2720)

Update to latest release.

Signed-off-by: Ben Kochie <[email protected]>

* add missing linkspeeds (#2711)

Signed-off-by: Cam Cope <[email protected]>

* Update common Prometheus files (#2723)

Signed-off-by: prombot <[email protected]>

* Update golangci-lint config (#2722)

* Migrate from Python codespell to golangci-lint misspell.
* Inline errcheck exclude list in the golangci-lint config.

Signed-off-by: Ben Kochie <[email protected]>

* Add mountpoint to NodeFilesystem alerts

This helps to identify alerting filesystem.

Signed-off-by: Vitaly Zhuravlev <[email protected]>

* Decrease NodeFilesystem pending time to 15m

30m is too long and there is a risk of running out of disk space/inodes completely if something is filling up disk very fast (like log file).

Signed-off-by: Vitaly Zhuravlev <[email protected]>

* Add CPU and memory alerts

Signed-off-by: Vitaly Zhuravlev <[email protected]>

* Add failed systemd service alert

Signed-off-by: Vitaly Zhuravlev <[email protected]>

* Decrease NodeNetwork*Errs pending period

Signed-off-by: Vitaly Zhuravlev <[email protected]>

* Set 'at' everywhere as preposition for instance

Signed-off-by: Vitaly Zhuravlev <[email protected]>

* Add NodeDiskIOSaturation alert

Signed-off-by: Vitaly Zhuravlev <[email protected]>

* Add %(nodeExporterSelector)s to Network and conntrack alerts

Signed-off-by: Vitaly Zhuravlev <[email protected]>

* Add diskDevice selector

Signed-off-by: Vitaly Zhuravlev <[email protected]>

* Fix NodeMemoryHighUtilization alert

Signed-off-by: Vitaly Zhuravlev <[email protected]>

* Add NodeSystemSaturation and NodeMemoryMajorPagesFaults

Signed-off-by: Vitaly Zhuravlev <[email protected]>

* Decrease NodeSystemdServiceFailed severity to warning

Signed-off-by: Vitaly Zhuravlev <[email protected]>

* Extend alert description

Signed-off-by: Vitaly Zhuravlev <[email protected]>

* Add comma after 'mounted on'

Signed-off-by: Vitaly Zhuravlev <[email protected]>

* Add thresholds for memory alerts

Signed-off-by: Vitaly Zhuravlev <[email protected]>

* Add thresholds for memory, disk and system alerts

Signed-off-by: Vitaly Zhuravlev <[email protected]>

* Set severity to NodeCPUHighUsage to info

Signed-off-by: Vitaly Zhuravlev <[email protected]>

* Update NodeSystemSaturation severity

Signed-off-by: Vitaly Zhuravlev <[email protected]>

* Revert alerts pending durtions

Signed-off-by: Vitaly Zhuravlev <[email protected]>

* Update common Prometheus files

Signed-off-by: prombot <[email protected]>

* Add cpu vulnerabilities reporting from sysfs (#2721)

* Add cpu vulnerabilities reporting from sysfs

---------

Signed-off-by: Michal Wasilewski <[email protected]>

* build(deps): bump github.com/beevik/ntp from 1.0.0 to 1.1.1

Bumps [github.com/beevik/ntp](https://github.com/beevik/ntp) from 1.0.0 to 1.1.1.
- [Release notes](https://github.com/beevik/ntp/releases)
- [Changelog](https://github.com/beevik/ntp/blob/main/RELEASE_NOTES.md)
- [Commits](https://github.com/beevik/ntp/compare/v1.0.0...v1.1.1)

---
updated-dependencies:
- dependency-name: github.com/beevik/ntp
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump github.com/prometheus/client_golang

Bumps [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang) from 1.15.1 to 1.16.0.
- [Release notes](https://github.com/prometheus/client_golang/releases)
- [Changelog](https://github.com/prometheus/client_golang/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prometheus/client_golang/compare/v1.15.1...v1.16.0)

---
updated-dependencies:
- dependency-name: github.com/prometheus/client_golang
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Add include and exclude filter for hwmon collector (#2699)

* Add include and exclude flags chip name flags to hwmon collector, following example in systemd collector

---------

Signed-off-by: Conall O'Brien <[email protected]>
Co-authored-by: Ben Kochie <[email protected]>

* Add missing ethtool flag documentation (#2743)

Signed-off-by: Gabi Davar <[email protected]>

* Update all Include and Exclude variables to use the systemdUnit naming (#2740)

prefix.

Leave an annotation about using regexps instead of device_filter.go, so
@SuperQ doesn't need to remember everything.

Signed-off-by: Conall O'Brien <[email protected]>

* Fixup hwmon chip include (#2739)

Use the correct include value to the device filter function.
* Add new bogus hwmon fixture.
* Update end-to-end test to use hwmon chip include flag.

Signed-off-by: Ben Kochie <[email protected]>

* Release v1.6.1 (#2747)

Rebuild with latest Go compiler bugfix release.

Signed-off-by: Ben Kochie <[email protected]>

* Synchronize common files from prometheus/prometheus (#2736)

* Update common Prometheus files

Signed-off-by: prombot <[email protected]>

* Fixup linting issues

* Disbale unused-parameter check.
* Fixup minor linting issues.

Signed-off-by: Ben Kochie <[email protected]>

---------

Signed-off-by: prombot <[email protected]>
Signed-off-by: Ben Kochie <[email protected]>
Co-authored-by: Ben Kochie <[email protected]>

* Update common Prometheus files (#2752)

Signed-off-by: prombot <[email protected]>

* Include drm collector in README

The DRM collector was missing in the README, this change includes it together with a short description.

Signed-off-by: L <[email protected]>

* collector/netdev_linux.go: Fallback to 32-bit stats (#2757)

On some platforms, `msg.Attributes.Stats64` is `nil` because the kernel doesn't
expose 64-bit stats. In that case, return `msg.Attributes.Stats` instead, which
are the 32-bit equivalent.

Note that `RXOtherhostDropped` isn't available in that case, so we hardcode it
to zero.

Fixes #2756.

Signed-off-by: Benoît Knecht <[email protected]>

* build(deps): bump github.com/beevik/ntp from 1.1.1 to 1.3.0 (#2762)

Signed-off-by: Ben Kochie <[email protected]>

* build(deps): bump github.com/prometheus/procfs from 0.11.0 to 0.11.1 (#2763)

Bumps [github.com/prometheus/procfs](https://github.com/prometheus/procfs) from 0.11.0 to 0.11.1.
- [Release notes](https://github.com/prometheus/procfs/releases)
- [Commits](https://github.com/prometheus/procfs/compare/v0.11.0...v0.11.1)

---
updated-dependencies:
- dependency-name: github.com/prometheus/procfs
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump github.com/jsimonetti/rtnetlink from 1.3.3 to 1.3.4 (#2765)

Bumps [github.com/jsimonetti/rtnetlink](https://github.com/jsimonetti/rtnetlink) from 1.3.3 to 1.3.4.
- [Release notes](https://github.com/jsimonetti/rtnetlink/releases)
- [Commits](https://github.com/jsimonetti/rtnetlink/compare/v1.3.3...v1.3.4)

---
updated-dependencies:
- dependency-name: github.com/jsimonetti/rtnetlink
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Drop redundant GOOS build tags if already in filename

Drop redundant GOOS build tags at start of file if the constraint is
already specified by the filename, e.g. foo_GOOS.go or
foo_GOOS_GOARCH.go, avoiding potential confusion in future.

cf. https://pkg.go.dev/cmd/go#hdr-Build_constraints

Signed-off-by: Daniel Swarbrick <[email protected]>

* Sync build tags in *_test.go (#2767)

Ensure that unwanted tests are correctly excluded when various build
tags are specified, i.e. when the code that they test would be excluded
from compilation.

Signed-off-by: Daniel Swarbrick <[email protected]>

* Upgrade github.com/ema/qdisc to v1.0.0 to improve qdisc collector (#2779)

performance

Signed-off-by: Oliver Geiselhardt-Herms <[email protected]>
Co-authored-by: Oliver Geiselhardt-Herms <[email protected]>

* Add CPU MHz as the value for "node_cpu_info" metric

For CPUs which don't have an available (or insertable) cpufreq driver,
the /proc/cpuinfo file can sometimes have accurate CPU core frequency
measurements. This change replaces the constant value of "1" for the
"node_cpu_info" metric with the parsed CPU MHz value from
/proc/cpuinfo for each core.

Signed-off-by: John Kordich <[email protected]>

* Update e2e-output.txt with new expected metric values

Changes the e2e-output.txt file to have the expected CPU MHz values
for the node_cpu_info metric.

Signed-off-by: John Kordich <[email protected]>

* Add new node_cpu_frequency_hertz metric

Revert changes to node_cpu_info and add new node_cpu_frequency_hertz
metric for measuring CPU frequency from /proc/cpuinfo

Signed-off-by: John Kordich <[email protected]>

* Change log message from Warn to Debug

Signed-off-by: John Kordich <[email protected]>

Co-authored-by: Ben Kochie <[email protected]>
Signed-off-by: John Kordich <[email protected]>

* fix(qdisc) flag naming corrected for consistency (#2782)

* fix collector qdisc flag naming for consistency

---------

Signed-off-by: jbradleynh <[email protected]>

* btrfs: close btrfs.FS handle after use

Despite being quite hard to provoke (< 10% in my testing), the btrfs
collector would occasionally leave stale FDs relating to btrfs
mountpoints, making the filesystems unable to be unmounted.

Fixes: #2772.

Signed-off-by: Daniel Swarbrick <[email protected]>

* Update to Go 1.21 (#2796)

* Update Go build to 1.21.
* Update machine images to Ubuntu 22.04 current.

Signed-off-by: Ben Kochie <[email protected]>

* Optionally fetch ARP stats via rtnetlink instead of procfs (#2777)

* Optionally fetch ARP stats via rtnetlink instead of procfs

Implement collection of ARP stats via rtnetlink to work around
shortcomings in the output of /proc/net/arp, which truncates InfiniBand
link-layer addresses.

Fixes: #2776

---------

Signed-off-by: Daniel Swarbrick <[email protected]>
Co-authored-by: Ben Kochie <[email protected]>

* build(deps): bump golang.org/x/sys from 0.10.0 to 0.12.0 (#2797)

Bumps [golang.org/x/sys](https://github.com/golang/sys) from 0.10.0 to 0.12.0.
- [Commits](https://github.com/golang/sys/compare/v0.10.0...v0.12.0)

---
updated-dependencies:
- dependency-name: golang.org/x/sys
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Update common Prometheus files (#2798)

Signed-off-by: prombot <[email protected]>

* Add ZFS freebsd per dataset stats (#2753)

* Rename parsePoolObjsetFile to parseLinuxPoolObjsetFile to better reflect
it's scope
* Create a new parseFreeBSDPoolObjsetStats function, to generate a list
of per pool metrics to be queried via sysctl


---------

Signed-off-by: Conall O'Brien <[email protected]>

* Move RO status before error return

Signed-off-by: Metbog <[email protected]>

* Update common Prometheus files

Signed-off-by: prombot <[email protected]>

* fix(zfs)  zfs `arcstats.p` on FreeBSD 14.0+ (#2754)

* dongjiang, fix zfs arcstats.p

Signed-off-by: dongjiang1989 <[email protected]>

* dongjiang, fix gofmt -s

Signed-off-by: dongjiang1989 <[email protected]>

* change warn log to debug log by code review

Signed-off-by: dongjiang1989 <[email protected]>

---------

Signed-off-by: dongjiang1989 <[email protected]>

* Fix promhttp_metric_handler_errors_total metric not being disabled by flag

Signed-off-by: ToMe25 <[email protected]>

* build(deps): bump github.com/prometheus/client_golang (#2815)

Bumps [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang) from 1.16.0 to 1.17.0.
- [Release notes](https://github.com/prometheus/client_golang/releases)
- [Changelog](https://github.com/prometheus/client_golang/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prometheus/client_golang/compare/v1.16.0...v1.17.0)

---
updated-dependencies:
- dependency-name: github.com/prometheus/client_golang
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Fix inconsistent variable name, to address compilation issue (#2820)

https://github.com/prometheus/node_exporter/issues/2819

Signed-off-by: Conall O'Brien <[email protected]>

* Update README.md: update the 'more details' url in the section 'TLS endpoint' (#2814)

* Update README.md: correct the wrong url(link to exporter-toolkit web-config) in the section 'TLS endpoint'

Signed-off-by: yang-stressfree <[email protected]>

* Update README.md

Co-authored-by: Ben Kochie <[email protected]>
Signed-off-by: yang-stressfree <[email protected]>

---------

Signed-off-by: yang-stressfree <[email protected]>
Co-authored-by: Ben Kochie <[email protected]>

* Update common Prometheus files

Signed-off-by: prombot <[email protected]>

* build(deps): bump golang.org/x/net from 0.11.0 to 0.17.0

Bumps [golang.org/x/net](https://github.com/golang/net) from 0.11.0 to 0.17.0.
- [Commits](https://github.com/golang/net/compare/v0.11.0...v0.17.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>

* build(deps): bump github.com/prometheus/procfs from 0.11.1 to 0.12.0

Bumps [github.com/prometheus/procfs](https://github.com/prometheus/procfs) from 0.11.1 to 0.12.0.
- [Release notes](https://github.com/prometheus/procfs/releases)
- [Commits](https://github.com/prometheus/procfs/compare/v0.11.1...v0.12.0)

---
updated-dependencies:
- dependency-name: github.com/prometheus/procfs
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Update e2e fixtures

Update for fixes in https://github.com/prometheus/procfs/pull/543

Signed-off-by: Ben Kochie <[email protected]>

* NFSd: fix nfsd v4 index miss (#2824)

* fix nfsd v4 index miss

---------

Signed-off-by: dongjiang1989 <[email protected]>

* fix readme about expose memory statistics

Signed-off-by: joey <[email protected]>

* Fix typo in CHANGELOG.md (#2836)

Use # consistently for PR number.

Signed-off-by: nemobis <[email protected]>

* Update common Prometheus files (#2840)

Signed-off-by: prombot <[email protected]>

* build(deps): bump github.com/prometheus/common from 0.44.0 to 0.45.0 (#2837)

Bumps [github.com/prometheus/common](https://github.com/prometheus/common) from 0.44.0 to 0.45.0.
- [Release notes](https://github.com/prometheus/common/releases)
- [Commits](https://github.com/prometheus/common/compare/v0.44.0...v0.45.0)

---
updated-dependencies:
- dependency-name: github.com/prometheus/common
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump github.com/prometheus/client_model (#2838)

Bumps [github.com/prometheus/client_model](https://github.com/prometheus/client_model) from 0.4.1-0.20230718164431-9a2bf3000d16 to 0.5.0.
- [Release notes](https://github.com/prometheus/client_model/releases)
- [Commits](https://github.com/prometheus/client_model/commits/v0.5.0)

---
updated-dependencies:
- dependency-name: github.com/prometheus/client_model
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Release 1.7.0 (#2845)

* [FEATURE] Add ZFS freebsd per dataset stats #2753
* [FEATURE] Add cpu vulnerabilities reporting from sysfs #2721
* [ENHANCEMENT] Parallelize stat calls in Linux filesystem collector #1772
* [ENHANCEMENT] Add missing linkspeeds to ethtool collector 2711
* [ENHANCEMENT] Add CPU MHz as the value for `node_cpu_info` metric #2778
* [ENHANCEMENT] Improve qdisc collector performance #2779
* [ENHANCEMENT] Add include and exclude filter for hwmon collector #2699
* [ENHANCEMENT] Optionally fetch ARP stats via rtnetlink instead of procfs #2777
* [BUFFIX] Fix ZFS arcstats on FreeBSD 14.0+ 2754
* [BUGFIX] Fallback to 32-bit stats in netdev #2757
* [BUGFIX] Close btrfs.FS handle after use #2780
* [BUGFIX] Move RO status before error return #2807
* [BUFFIX] Fix `promhttp_metric_handler_errors_total` being always active #2808
* [BUGFIX] Fix nfsd v4 index miss #2824

Signed-off-by: Ben Kochie <[email protected]>

* Add NodeBondingDegraded alert (#2843)

Signed-off-by: Ayoub Nasr <[email protected]>

* Make filesystem space prediction window configurable (#2844)

Signed-off-by: fitz123 <[email protected]>

* NFSd: handle new wdeleg_getattr attribute in /proc/net/rpc/nfsd (#2810)

This attribute was introduced it v6.6-rc1.

The relevant changes in procfs were merged here:

https://github.com/prometheus/procfs/pull/574

and are part of procfs v0.11.2

I have also figured out that the stat should be part of the v4 ops
counters struct, but that will need changes to both procfs and this
code. Since people are already using 6.6-rc1, I think it's better to get
the code out there --- even if they don't care about wdeleg_getattr,
currently they get _no_ nfsd stats with 6.6-rc1.

I will make two follow-up PRs to clean this up in the next releases of
procfs and node-exporter.

Signed-off-by: Tobias Klausmann <[email protected]>

* Update common Prometheus files (#2851)

Signed-off-by: prombot <[email protected]>

* Update containerization warnings (#2855)

Running node_exporter in containers is now a fairly well understood
problem. Replace the warnings with something less dire and more
prescriptive.

Signed-off-by: Ben Kochie <[email protected]>

* Fix debug log in cpu collector (#2857)

Signed-off-by: Simon Pasquier <[email protected]>

* build(deps): bump github.com/alecthomas/kingpin/v2 from 2.3.2 to 2.4.0 (#2865)

Bumps [github.com/alecthomas/kingpin/v2](https://github.com/alecthomas/kingpin) from 2.3.2 to 2.4.0.
- [Release notes](https://github.com/alecthomas/kingpin/releases)
- [Commits](https://github.com/alecthomas/kingpin/compare/v2.3.2...v2.4.0)

---
updated-dependencies:
- dependency-name: github.com/alecthomas/kingpin/v2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump howett.net/plist from 1.0.0 to 1.0.1 (#2862)

Bumps [howett.net/plist](https://github.com/DHowett/go-plist) from 1.0.0 to 1.0.1.
- [Commits](https://github.com/DHowett/go-plist/compare/v1.0.0...v1.0.1)

---
updated-dependencies:
- dependency-name: howett.net/plist
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Add new collector and metrics for XFRM (#2544) (#2866)

Signed-off-by: Gavin Lam <[email protected]>

* build(deps): bump github.com/jsimonetti/rtnetlink from 1.3.5 to 1.4.0 (#2864)

Bumps [github.com/jsimonetti/rtnetlink](https://github.com/jsimonetti/rtnetlink) from 1.3.5 to 1.4.0.
- [Release notes](https://github.com/jsimonetti/rtnetlink/releases)
- [Commits](https://github.com/jsimonetti/rtnetlink/compare/v1.3.5...v1.4.0)

---
updated-dependencies:
- dependency-name: github.com/jsimonetti/rtnetlink
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump golang.org/x/sys from 0.13.0 to 0.15.0 (#2863)

Bumps [golang.org/x/sys](https://github.com/golang/sys) from 0.13.0 to 0.15.0.
- [Commits](https://github.com/golang/sys/compare/v0.13.0...v0.15.0)

---
updated-dependencies:
- dependency-name: golang.org/x/sys
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Add TCPOFOQueue to default netstat metrics (#2867)

Adds a count for TCP packets received out of orders. This can be an
indication that there is packet loss on the way packets travel towards
this server. In that case, the sender will retransmit (and we can
already monitor the Tcp_RetransSegs there), but we have no way to
monitor the packet loss on the receiver side. When a packet is received
and the receiver detects previous one missing, it will increase the
TCPOFOQueue counter and reply with selective ACK to the sender, both
possible indications of packet loss. Confirmation of packet loss can be
achieved by taking packet captures, ignoring wireshark analysis, and
carefully looking at data being retransmitted based on the TCP seq.

Just like RetransSegs, TCPOFOQueue should be interesting for any
deployment as a mean to detect packet loss, so here suggesting adding it
to the default list.

Signed-off-by: François Rigault <[email protected]>
Co-authored-by: François Rigault <[email protected]>

* Update common Prometheus files (#2870)

Signed-off-by: prombot <[email protected]>

* Add mitigation information to the linux vulnerabilities collector (#2806)

While the CPU vulnerabilities collector has been added in https://github.com/prometheus/node_exporter/pull/2721 , it's currently not including information regarding the mitigation strategy used for a given vulnerability.

This information can be quite valuable, as often times different mitigation strategies come with a different performance impact.

This commit adds a third label to the cpu_vulnerabilities_info metric, to include the "mitigation" used for a given vulnerability - if a given vulnerability is not affecting a node or the node is still vulnerable, the mitigation is expected to be empty.

Signed-off-by: João Lima <[email protected]>

* Update common Prometheus files (#2872)

Signed-off-by: prombot <[email protected]>

* build(deps): bump golang.org/x/crypto from 0.14.0 to 0.17.0 (#2877)

Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.14.0 to 0.17.0.
- [Commits](https://github.com/golang/crypto/compare/v0.14.0...v0.17.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Update common Prometheus files (#2879)

Signed-off-by: prombot <[email protected]>

* build(deps): bump github.com/prometheus/exporter-toolkit (#2885)

Bumps [github.com/prometheus/exporter-toolkit](https://github.com/prometheus/exporter-toolkit) from 0.10.0 to 0.11.0.
- [Release notes](https://github.com/prometheus/exporter-toolkit/releases)
- [Changelog](https://github.com/prometheus/exporter-toolkit/blob/master/CHANGELOG.md)
- [Commits](https://github.com/prometheus/exporter-toolkit/compare/v0.10.0...v0.11.0)

---
updated-dependencies:
- dependency-name: github.com/prometheus/exporter-toolkit
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump github.com/beevik/ntp from 1.3.0 to 1.3.1 (#2886)

Bumps [github.com/beevik/ntp](https://github.com/beevik/ntp) from 1.3.0 to 1.3.1.
- [Release notes](https://github.com/beevik/ntp/releases)
- [Changelog](https://github.com/beevik/ntp/blob/main/RELEASE_NOTES.md)
- [Commits](https://github.com/beevik/ntp/compare/v1.3.0...v1.3.1)

---
updated-dependencies:
- dependency-name: github.com/beevik/ntp
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump github.com/prometheus/client_golang (#2887)

Bumps [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang) from 1.17.0 to 1.18.0.
- [Release notes](https://github.com/prometheus/client_golang/releases)
- [Changelog](https://github.com/prometheus/client_golang/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prometheus/client_golang/compare/v1.17.0...v1.18.0)

---
updated-dependencies:
- dependency-name: github.com/prometheus/client_golang
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Update common Prometheus files (#2897)

Signed-off-by: prombot <[email protected]>

* diskstats: ignore zram devices on linux systems by default (#2898)

Signed-off-by: DBS-ST-VIT <[email protected]>
Co-authored-by: DBS-ST-VIT <[email protected]>

* Bump golang-builder version (#2908)

Signed-off-by: Alper Polat <[email protected]>

* exec_bsd: Fix labels for vm.stats.sys.v_syscall sysctl (#2895)

Signed-off-by: David O'Rourke <[email protected]>

* chore:remove constant from function (#2884)

Signed-off-by: tyltr <[email protected]>

* build(deps): bump github.com/prometheus/common from 0.45.0 to 0.46.0 (#2910)

Bumps [github.com/prometheus/common](https://github.com/prometheus/common) from 0.45.0 to 0.46.0.
- [Release notes](https://github.com/prometheus/common/releases)
- [Commits](https://github.com/prometheus/common/compare/v0.45.0...v0.46.0)

---
updated-dependencies:
- dependency-name: github.com/prometheus/common
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump github.com/jsimonetti/rtnetlink from 1.4.0 to 1.4.1 (#2909)

Bumps [github.com/jsimonetti/rtnetlink](https://github.com/jsimonetti/rtnetlink) from 1.4.0 to 1.4.1.
- [Release notes](https://github.com/jsimonetti/rtnetlink/releases)
- [Commits](https://github.com/jsimonetti/rtnetlink/compare/v1.4.0...v1.4.1)

---
updated-dependencies:
- dependency-name: github.com/jsimonetti/rtnetlink
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix hwmon nil ptr (#2873)

* fix hwmon nil ptr

syslink maybe lost in some cases.

---------

Signed-off-by: TaoGe <[email protected]>

* Fix hwmon error capture (#2915)

Fix golangci-lint "ineffectual assignment" by correctly capturing any
errors within the hwmon gathering loop.

Signed-off-by: Ben Kochie <[email protected]>

* Update common Prometheus files (#2917)

Signed-off-by: prombot <[email protected]>

* Revert "Add ZFS freebsd per dataset stats (#2753)" (#2925)

This reverts commit f34aaa61092fe7e3c6618fdb0b0d16a68a291ff7.

Signed-off-by: Caleb Webber <[email protected]>

* filesystem: fix mountTimeout not working issue (#2903)

Signed-off-by: DongWei <[email protected]>

* Fix description for NodeDiskIOSaturation alert (#2929)

NodeDiskIOSaturation description should say 30m per the "for" clause

Signed-off-by: Taylor Sly <[email protected]>

* Enforce no subprocess policy (#2926)

Add depguard to golangci-lint to enforce the no-os/exec policy.

Signed-off-by: Ben Kochie <[email protected]>

* filesystem: surface device errors (#2923)

filesystem: surface filesystem device error

Fixes: #2918
---------

Signed-off-by: Pamela Mei i540369 <[email protected]>

* Revert "filesystem: fix mountTimeout not working issue (#2903)" (#2932)

This reverts commit 9f1f791ac2e1377781c4f8807a23d86d92ad6499.

Signed-off-by: Ben Kochie <[email protected]>

* Update common Prometheus files (#2939)

Signed-off-by: prombot <[email protected]>

* UPDATE base image golang version

* UPDATE vulnerabilities dependencies

* UPDATE dependencies

---------

Signed-off-by: Ben Kochie <[email protected]>
Signed-off-by: dependabot[bot] <[email protected]>
Sign…
jritter pushed a commit to jritter/procfs that referenced this pull request Jul 15, 2024
…etheus#574)

This attribute was introduced it v6.6-rc1.

Signed-off-by: Tobias Klausmann <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants