Commit graph

2228 commits

Author SHA1 Message Date
mknapphrt 0fddfd1ba5
Cache metricsfamily help text (#3175)
Some checks failed
golangci-lint / lint (push) Has been cancelled
Signed-off-by: Mark Knapp <mknapp@hudson-trading.com>
2024-11-07 21:46:38 +01:00
dependabot[bot] 07ee8efaa4 build(deps): bump github.com/prometheus/common from 0.60.0 to 0.60.1
Some checks failed
golangci-lint / lint (push) Has been cancelled
Bumps [github.com/prometheus/common](https://github.com/prometheus/common) from 0.60.0 to 0.60.1.
- [Release notes](https://github.com/prometheus/common/releases)
- [Changelog](https://github.com/prometheus/common/blob/main/RELEASE.md)
- [Commits](https://github.com/prometheus/common/compare/v0.60.0...v0.60.1)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-02 08:48:24 +00:00
dependabot[bot] 957fc53748 build(deps): bump github.com/prometheus/client_golang
Bumps [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang) from 1.20.4 to 1.20.5.
- [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.20.4...v1.20.5)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-02 08:48:10 +00:00
dependabot[bot] 0a7582f7c2 build(deps): bump golang.org/x/sys from 0.25.0 to 0.26.0
Bumps [golang.org/x/sys](https://github.com/golang/sys) from 0.25.0 to 0.26.0.
- [Commits](https://github.com/golang/sys/compare/v0.25.0...v0.26.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-02 08:48:02 +00:00
dependabot[bot] 22e1b18f2e build(deps): bump github.com/opencontainers/selinux
Bumps [github.com/opencontainers/selinux](https://github.com/opencontainers/selinux) from 1.11.0 to 1.11.1.
- [Release notes](https://github.com/opencontainers/selinux/releases)
- [Commits](https://github.com/opencontainers/selinux/compare/v1.11.0...v1.11.1)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-02 08:47:55 +00:00
prombot f35a592dd6 Update common Prometheus files
Some checks failed
Push README to Docker Hub / Push README to Docker Hub (push) Has been cancelled
Push README to Docker Hub / Push README to quay.io (push) Has been cancelled
Signed-off-by: prombot <prometheus-team@googlegroups.com>
2024-10-24 12:36:11 +02:00
PrometheusBot e6a9cfbdcd
Update common Prometheus files (#3144)
Some checks failed
golangci-lint / lint (push) Has been cancelled
Signed-off-by: prombot <prometheus-team@googlegroups.com>
2024-10-08 14:39:30 +02:00
dependabot[bot] e647b99231
build(deps): bump github.com/mdlayher/wifi from 0.2.0 to 0.3.0 (#3140)
Bumps [github.com/mdlayher/wifi](https://github.com/mdlayher/wifi) from 0.2.0 to 0.3.0.
- [Release notes](https://github.com/mdlayher/wifi/releases)
- [Commits](https://github.com/mdlayher/wifi/compare/v0.2.0...v0.3.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-08 14:39:19 +02:00
dependabot[bot] 04db3ea7ea build(deps): bump github.com/prometheus/common from 0.59.1 to 0.60.0
Some checks failed
golangci-lint / lint (push) Has been cancelled
Bumps [github.com/prometheus/common](https://github.com/prometheus/common) from 0.59.1 to 0.60.0.
- [Release notes](https://github.com/prometheus/common/releases)
- [Changelog](https://github.com/prometheus/common/blob/main/RELEASE.md)
- [Commits](https://github.com/prometheus/common/compare/v0.59.1...v0.60.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-10-07 10:54:34 +02:00
Ben Kochie 1b332edfe8 Fix: Add safety check to hwmon read
Some checks failed
golangci-lint / lint (push) Has been cancelled
Avoid panic for accessing slice out of range in hwmon.

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

Signed-off-by: Ben Kochie <superq@gmail.com>
2024-09-30 15:29:38 +02:00
Daniel Swarbrick ebf3cbfbb3 zfs: drop superfluous typecasting of test values
Drop superfluous and overly pedantic typecasting for values that fit
within 32 bits or where type comparison is already hinted.

Signed-off-by: Daniel Swarbrick <daniel.swarbrick@gmail.com>
2024-09-30 14:52:38 +02:00
Daniel Swarbrick 6c96239eaa zfs: rename zfs.go to zfs_common.go
Also add build-tags to ensure it is ignored on non-relevant archs.

Signed-off-by: Daniel Swarbrick <daniel.swarbrick@gmail.com>
2024-09-30 14:52:38 +02:00
Daniel Swarbrick 770bd551db zfs: standardize case spelling of NewZFSCollector
Ensure identical factory function name across arch-specific files so
that the common init() function in zfs.go works.

Signed-off-by: Daniel Swarbrick <daniel.swarbrick@gmail.com>
2024-09-30 14:52:38 +02:00
Daniel Swarbrick b2dfaeb146 zfs: make zfsPoolStatesName an array
Code does not modify zfsPoolStatesName slice, so make it an array.

Signed-off-by: Daniel Swarbrick <daniel.swarbrick@gmail.com>
2024-09-30 14:52:38 +02:00
Daniel Swarbrick 8ea822f67a zfs: move common init function out of arch-specific files
Signed-off-by: Daniel Swarbrick <daniel.swarbrick@gmail.com>
2024-09-30 14:52:38 +02:00
Daniel Swarbrick fafc973e94 zfs: move Linux-specific code out of zfs.go
Avoid Linux-specific code scattered in two places by moving it to the
already-existing zfs_linux.go.

Signed-off-by: Daniel Swarbrick <daniel.swarbrick@gmail.com>
2024-09-30 14:52:38 +02:00
eduarrrd 11f93d3da1
textfile: Allow specifiying multiple directory globs. (#3135)
Some checks are pending
golangci-lint / lint (push) Waiting to run
We already support reading from multiple directories though only using globs. Now we can specify them outright.

Example use case is exporting both static info on a RO FS generated during image building and traditional uses of textfiles (e.g. for R/W service metrics files) without scripting a file copy.

* keep flag name for compatibility
* clarify flag help text
* add test case (replicating the glob one)

Signed-off-by: eduarrrd <eduarrrd@users.noreply.github.com>
2024-09-30 09:40:03 +02:00
Johannes Ziemke b5ce6bcc4d Disable osrelease collector on aix
Some checks failed
golangci-lint / lint (push) Has been cancelled
Signed-off-by: Johannes Ziemke <github@5pi.de>
2024-09-28 15:58:02 +02:00
Johannes Ziemke 92c10f9fd1 Add AIX dashboard
Signed-off-by: Johannes Ziemke <github@5pi.de>
2024-09-28 15:58:02 +02:00
Johannes Ziemke b9e14055c1 Enable uname collector on AIX
Signed-off-by: Johannes Ziemke <github@5pi.de>
2024-09-28 15:58:02 +02:00
Johannes Ziemke 3c7109826a Add AIX netdev collector
Signed-off-by: Johannes Ziemke <github@5pi.de>
2024-09-28 15:58:02 +02:00
Johannes Ziemke 0a2a54ff2d Add AIX filesystem collector
Signed-off-by: Johannes Ziemke <github@5pi.de>
2024-09-28 15:58:02 +02:00
Johannes Ziemke 8fff2f7c67 Add AIX diskstats
Signed-off-by: Johannes Ziemke <github@5pi.de>
2024-09-28 15:58:02 +02:00
Johannes Ziemke dfd1f08739 Add AIX loadavg collector
Signed-off-by: Johannes Ziemke <github@5pi.de>
2024-09-28 15:58:02 +02:00
Johannes Ziemke 808c1a515b Add AIX meminfo
Signed-off-by: Johannes Ziemke <github@5pi.de>
2024-09-28 15:58:02 +02:00
Johannes Ziemke 2ebd807584 Add AIX CPU collector
Signed-off-by: Johannes Ziemke <github@5pi.de>
2024-09-28 15:58:02 +02:00
Steve Wills 71d9b6c061
build fix on FreeBSD (#3132)
Some checks failed
golangci-lint / lint (push) Has been cancelled
Signed-off-by: Steve Wills <steve@mouf.net>
2024-09-24 04:25:48 +02:00
PrometheusBot a37174eccf
Update common Prometheus files (#3130)
Some checks failed
golangci-lint / lint (push) Has been cancelled
Signed-off-by: prombot <prometheus-team@googlegroups.com>
2024-09-23 01:33:13 +02:00
Pranshu Srivastava 2023349c77
fix: address master issues (#3131)
Log using the machinery introduced in #3097.

Signed-off-by: Pranshu Srivastava <rexagod@gmail.com>
2024-09-23 01:32:59 +02:00
Tobias Nygren a5543cc0d4
collector: add NetBSD support for filesystem (#3082)
Signed-off-by: Tobias Nygren <tnn@NetBSD.org>
2024-09-22 19:51:29 +02:00
Nils K 715a2ed674
Gracefully handle absence of environment configuration file (#3062)
node_exporter has reasonable defaults so it is able to start without explicit config.
Such a setup is common in /usr/-only images where /etc/ is an empty tmpfs upon boot.

Signed-off-by: Nils K <24257556+septatrix@users.noreply.github.com>
2024-09-22 19:34:41 +02:00
prombot 076cc405d9 Update common Prometheus files
Some checks are pending
golangci-lint / lint (push) Waiting to run
Signed-off-by: prombot <prometheus-team@googlegroups.com>
2024-09-22 14:21:52 +02:00
Daniel Swarbrick 6253b08814
Bump jsimonetti/rtnetlink dependency to v2.0.2 (#3089)
Some checks failed
golangci-lint / lint (push) Has been cancelled
Signed-off-by: Daniel Swarbrick <daniel.swarbrick@gmail.com>
2024-09-20 19:23:06 +02:00
Siavash Safi 7a97429e57
Add exclude[] parameter (#3116)
Some checks failed
Push README to Docker Hub / Push README to Docker Hub (push) Has been cancelled
Push README to Docker Hub / Push README to quay.io (push) Has been cancelled
golangci-lint / lint (push) Has been cancelled
This PR adds a `exclude[]` URL parameter to exclude specific enabled collectors.
Compared to `collect[]` parameter, the `exclude[]` parameter results in a filtered list which equals enabled collectors minus excluded ones.

Signed-off-by: Siavash Safi <git@hosted.run>
2024-09-14 19:45:47 +02:00
Ben Kochie 090957658e
Update logging (#3097)
Some checks failed
golangci-lint / lint (push) Has been cancelled
Switch from promlog/go-kit to promslog/slog for logging.
* Update Go build to 1.23.

Signed-off-by: Ben Kochie <superq@gmail.com>
2024-09-11 10:51:28 +02:00
tomvil 041d67d269
Add ifAlias label to netdev collector (#3087)
Signed-off-by: Tomas Vilemaitis <tomas.vilemaitis@gmail.com>
2024-09-11 09:26:34 +02:00
Ben Kochie f63b64ec63
Update Go (#3120)
Update to Go 1.23.
* Use Docker for Arm tests.

Signed-off-by: Ben Kochie <superq@gmail.com>
2024-09-11 09:17:14 +02:00
Miguel Oliveira b9d0932179
Add node_filesystem_mount_info metric (#2970)
* Add node_filesystem_mount_info metric

Fixes: #1384

---------

Signed-off-by: Miguel Oliveira <miguel.oliveira4224@gmail.com>
2024-07-14 16:33:12 +02:00
Ricardo F 8a3a0dea73
Add TCPRcvQDrop to default netstat metrics (#3021)
Signed-off-by: Ricardo F <r@rfmoz.eu>
Co-authored-by: Ricardo F <r@rfmoz.eu>
2024-07-14 16:18:22 +02:00
Ben Kochie e0c4a47a02
Add interrupts collector filtering (#3028)
In order to reduce cardinality of the interrupts collector add
filtering options
* Add include/exclude regexp filter flags.
* Add boolean flag to include zero values, enabled by default.

Signed-off-by: Ben Kochie <superq@gmail.com>
2024-07-14 16:17:20 +02:00
dependabot[bot] 2ce82ca8e8
build(deps): bump golang.org/x/sys from 0.21.0 to 0.22.0 (#3073)
Bumps [golang.org/x/sys](https://github.com/golang/sys) from 0.21.0 to 0.22.0.
- [Commits](https://github.com/golang/sys/compare/v0.21.0...v0.22.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-14 14:50:21 +02:00
Pranshu Srivastava ff20a6ac48
collector/zfs: Prevent procfs integer underflow (#2961)
* collector/zfs: Prevent `procfs` integer underflow

Prevent integer underflow when parsing the `procfs` file as it used a
`ParseUint` to parse signed values.

Fixes: #2766
---------

Signed-off-by: Pranshu Srivastava <rexagod@gmail.com>
2024-07-14 14:36:30 +02:00
TJ Hoplock fdaa8fc00d
ref!: convert linux meminfo implementation to use procfs lib (#3049)
* ref!: convert linux meminfo implementation to use procfs lib

Part of #2957

Prometheus' procfs lib supports collecting memory info and we're using a
new enough version of the lib that has it available, so this converts
the meminfo collector for Linux to use data from procfs lib instead. The
bits I've touched for darwin/openbsd/netbsd are with intent to preserve
the original struct implementation/backwards compatibility.

Signed-off-by: TJ Hoplock <t.hoplock@gmail.com>

* fix: meminfo debug log unsupported value

Fixes:

```
ts=2024-06-11T19:04:55.591Z caller=meminfo.go:44 level=debug collector=meminfo msg="Set node_mem" memInfo="unsupported value type"
```

Signed-off-by: TJ Hoplock <t.hoplock@gmail.com>

* fix: don't coerce nil Meminfo entries to 0, leave out if nil

Nil entries in procfs.Meminfo fields indicate that the value isn't
present on the system. Coercing those nil values to `0` introduces new
metrics on systems that should not be present and can break some
queries.

Addresses PR feedback:
https://github.com/prometheus/node_exporter/pull/3049#discussion_r1637581536
https://github.com/prometheus/node_exporter/pull/3049#discussion_r1637584482

Signed-off-by: TJ Hoplock <t.hoplock@gmail.com>

---------

Signed-off-by: TJ Hoplock <t.hoplock@gmail.com>
2024-07-14 14:27:55 +02:00
Maarten van den Berg e8aa4de7c5
Add metrics for btrfs commit statistics (#3010)
Signed-off-by: Maarten van den Berg <maarten@channable.com>
2024-07-14 14:24:55 +02:00
Stefan Andres fe71568130
Add UIDs to dashboards (#3042)
Automatically add a uid to each dashboard.
This prevents changing URLs when restarting a grafana pod and
re-importing the dashboards via ConfigMaps.

Signed-off-by: Stefan Andres <sandres@anaconda.com>
2024-07-14 14:22:52 +02:00
Simon Krenger e11a4f0309
Add include and exclude filter for sensors in hwmon collector (#3072)
* Add include and exclude filter for sensors in hwmon collector
Fixes #2242

This commit adds two new flags (`collector.hwmon.sensor-include` and `collector.hwmon.sensor-exclude`) to the `hwmon` collector to allow inclusion or exclusion of specific sensors.

Some devices export nonsensical values for certain sensors. Here is an example:

```
node_hwmon_temp_celsius{chip="platform_nct6775_656",sensor="temp13"} 49.75
node_hwmon_temp_celsius{chip="platform_nct6775_656",sensor="temp15"} 3.892313987e+06
node_hwmon_temp_celsius{chip="platform_nct6775_656",sensor="temp16"} 3.892313987e+06
```

As a user I would like to only exclude these sensors, not necessarily the complete device (as is currently possible with the `--collector.hwmon.chip-exclude` flag) as other sensor values might be sensical or desired.

The new option filters based both on device name and sensor name, separated by a semicolon. For example, to exclude the two sensors above, the following regex can be used:

~~~
--collector.hwmon.sensor-exclude="platform_nct6775_656;temp1[5,6]"
~~~


---------

Signed-off-by: Simon Krenger <skrenger@redhat.com>
2024-07-14 13:50:06 +02:00
dependabot[bot] e0aa19aaef build(deps): bump github.com/prometheus/common from 0.53.0 to 0.55.0
Bumps [github.com/prometheus/common](https://github.com/prometheus/common) from 0.53.0 to 0.55.0.
- [Release notes](https://github.com/prometheus/common/releases)
- [Changelog](https://github.com/prometheus/common/blob/main/RELEASE.md)
- [Commits](https://github.com/prometheus/common/compare/v0.53.0...v0.55.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-14 13:18:37 +02:00
myeunee 99dc91c1dd Fix: Change EXPERIMENTAL to Experimental in README.md
Signed-off-by: myeunee <myeunee@gmail.com>
2024-07-14 13:00:57 +02:00
mchtech ec5e4b50b8 add IRQ PSI test data
Signed-off-by: mchtech <michu_an@126.com>
2024-07-14 12:44:38 +02:00
mchtech d2a307ed93 change irq psi url
Signed-off-by: mchtech <michu_an@126.com>
2024-07-14 12:44:38 +02:00