Commit Graph

194 Commits

Author SHA1 Message Date
Ben Kochie a58c632ea8
Merge pull request #96 from prometheus-community/superq/0.9.1
Release v0.9.1
2022-11-06 22:44:55 +01:00
SuperQ 4829a8861f
Release v0.9.1
* [BUGFIX] Fix runtime error: index out of range in mineVersion #93
* [BUGFIX] Fix race condition with maps and goroutines #94

Signed-off-by: SuperQ <superq@gmail.com>
2022-11-06 12:42:41 +01:00
Ben Kochie 61e28093f6
Merge pull request #93 from lahwaacz/master
Fix runtime error: index out of range in mineVersion
2022-11-06 12:20:27 +01:00
Jakub Klinkovský a35f67bb0f Avoid running mineVersion when the SMARTctlInfo struct is not ready
Signed-off-by: Jakub Klinkovský <j.l.k@gmx.com>
2022-11-06 11:56:43 +01:00
Jakub Klinkovský 6e2143ca62 Remove useless error message
All errors are already logged from the called functions: readSMARTctl,
resultCodeIsOk, jsonIsOk. Logging twice due to the same error is useless
and the "smartctl returned bad data for device" message is confusing
since that condition may happen when a device is in a low-power mode.

Signed-off-by: Jakub Klinkovský <j.l.k@gmx.com>
2022-11-06 11:56:41 +01:00
Ben Kochie 97947b0e27
Merge pull request #94 from NiceGuyIT/issue-23
Fixes #23: Race condition with maps and goroutines
2022-11-06 11:38:21 +01:00
David Randall 18b5b8d57e Fixes #23: Race condition with maps and goroutines
Signed-off-by: David Randall <David@NiceGuyIT.biz>
2022-11-05 08:55:14 -04:00
Ben Kochie 9bc77c579d
Merge pull request #90 from DaAwesomeP/DaAwesomeP-update-exporter-toolkit-v0.8.1
Update to exporter-toolkit v0.8.1
2022-10-23 11:44:36 +01:00
Perry Naseck a972874397
update to exporter-toolkit v0.8.1
Signed-off-by: Perry Naseck <git@perrynaseck.com>
2022-10-22 14:00:37 -04:00
Ben Kochie 0f32489b40
Merge pull request #87 from k0ste/help
Release 0.9.0
2022-10-20 17:18:48 +01:00
Konstantin Shalygin 648ded156d Release 0.9.0
Signed-off-by: Konstantin Shalygin <k0ste@k0ste.ru>
2022-10-20 18:22:58 +07:00
Ben Kochie b832e55e3e
Merge pull request #28 from lahwaacz/master
Skip vendor-specific statistics that lead to duplicate metric labels
2022-10-20 11:42:19 +01:00
Ben Kochie cee06eca3c
Merge pull request #86 from CrabappleProject/fit_windows
FIX: remove `os.stat` in order to fit in windows
2022-10-20 11:40:28 +01:00
Ben Kochie 3a8968a04a
Merge pull request #88 from k0ste/help3
Pruned /dev/ prefix from device label
2022-10-20 11:31:44 +01:00
Ben Kochie 2099be1e2c
Merge pull request #84 from k0ste/help2
Added disk form_factor meta label
2022-10-20 11:31:01 +01:00
Ben Kochie e76e458118
Update smartctl.go
Signed-off-by: Ben Kochie <superq@gmail.com>

Signed-off-by: Ben Kochie <superq@gmail.com>
2022-10-19 08:03:40 +02:00
Konstantin Shalygin e385b4a351 Pruned /dev/ prefix from device label
Now label matched with `node_exporter` labels

Signed-off-by: Konstantin Shalygin <k0ste@k0ste.ru>
2022-10-17 14:44:18 +07:00
Konstantin Shalygin 397a7a55f0 Added disk form_factor meta label
The requirement from field engineers is knowledge of the form factor of the device, i.e. 3.5", 2.5"

* updated EXAMPLE.md
* fixed copy-paste issue `Starting systemd_exporter`

Signed-off-by: Konstantin Shalygin <k0ste@k0ste.ru>
2022-10-17 14:28:05 +07:00
赵栩彬 daf1182285 FIX: remove `os.stat` in order to fit in windows
Signed-off-by: 赵栩彬 <zhaoxubin2016@mail.com>
2022-10-15 11:46:28 +08:00
Jakub Klinkovský e10ded530f skip vendor-specific statistics that lead to duplicate metric labels
fixes #3

Signed-off-by: Jakub Klinkovský <j.l.k@gmx.com>
2022-10-14 16:53:52 +02:00
Ben Kochie d3d5180048
Merge pull request #83 from k0ste/help2
Reduced number of meta labels
2022-10-14 10:18:32 +02:00
Konstantin Shalygin 82266c0397 Reduced number of meta labels
On test stand with 5 disks data size from exporter reduced from 148KB to 82KB

Signed-off-by: Konstantin Shalygin <k0ste@k0ste.ru>
2022-10-14 14:22:41 +07:00
Ben Kochie ed7dbafd00
Merge pull request #82 from k0ste/help
Removed doubled NVMe metrics
2022-10-14 07:43:45 +02:00
Konstantin Shalygin 56cd874440 Removed doubled NVMe metrics
Signed-off-by: Konstantin Shalygin <k0ste@k0ste.ru>
2022-10-13 19:45:25 +07:00
Ben Kochie babef4a758
Merge pull request #79 from prometheus-community/superq/drop_arm
Drop arm64 Docker image
2022-10-05 18:18:03 +02:00
SuperQ 261f0c0d83
Drop arm64 Docker image
Drop the arm64 Docker image until we figure out a good cross-build setup
for alpine-based builds.

Fixes: https://github.com/prometheus-community/smartctl_exporter/issues/78

Signed-off-by: SuperQ <superq@gmail.com>
2022-10-05 14:06:48 +02:00
Ben Kochie bc49dec5a6
Merge pull request #76 from prometheus-community/superq/cleanup_config
Cleanup obsolete yaml config
2022-10-05 13:53:19 +02:00
Ben Kochie 7ec38ac5bc
Merge pull request #77 from prometheus-community/superq/fixup_arm
Fix up multi-platform container builds
2022-10-03 21:06:09 +02:00
SuperQ 0472e35e77
Fix up multi-platform container builds
Use the `--platform` flag on `FROM` to build with the correct platform.

Signed-off-by: SuperQ <superq@gmail.com>
2022-10-03 17:44:44 +02:00
SuperQ c9b4f52ec6
Cleanup obsolete yaml config
Remove the old yaml config and usage.

Signed-off-by: SuperQ <superq@gmail.com>
2022-10-03 17:35:37 +02:00
Ben Kochie 14778c90ea
Release 0.8.0 (#75)
Breaking Changes:
All configuration has been moved from the config file to command line flags.

* [CHANGE] Refactor exporter config #68
* [BUGFIX] Fix smartctl command args to avoid wakeups #74
* [ENHANCEMENT] Add smartmontools to container image #51

Signed-off-by: SuperQ <superq@gmail.com>
2022-10-03 15:34:52 +02:00
Ben Kochie e88442081c
Adjust smartctl command args (#74)
Update smartctl command arguments to reduce device wakeup from
standby/idle.
* Ignore exit code of 2 for sleeping devices.

Fixes: https://github.com/prometheus-community/smartctl_exporter/issues/61

Signed-off-by: SuperQ <superq@gmail.com>

Signed-off-by: SuperQ <superq@gmail.com>
2022-10-03 14:49:32 +02:00
Ben Kochie c8d3e48f3d
Refactor exporter config (#68)
Switch exporter over to standard Prometheus exporter flags and logging.
This eliminates the need for a configuraion file.

Signed-off-by: SuperQ <superq@gmail.com>
2022-10-03 11:16:00 +02:00
PrometheusBot ca94177954
Update common Prometheus files (#70)
Signed-off-by: prombot <prometheus-team@googlegroups.com>

Signed-off-by: prombot <prometheus-team@googlegroups.com>
2022-09-20 20:14:46 +02:00
Ben Kochie b9b95b1e75
Add container image badge (#69)
Add a link to quay.io for the container image.

Signed-off-by: SuperQ <superq@gmail.com>

Signed-off-by: SuperQ <superq@gmail.com>
2022-09-20 19:50:29 +02:00
dependabot[bot] 78a47cd2c2
Bump github.com/tidwall/gjson from 1.14.1 to 1.14.3 (#63)
Bumps [github.com/tidwall/gjson](https://github.com/tidwall/gjson) from 1.14.1 to 1.14.3.
- [Release notes](https://github.com/tidwall/gjson/releases)
- [Commits](https://github.com/tidwall/gjson/compare/v1.14.1...v1.14.3)

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

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-09-10 16:53:49 +02:00
dependabot[bot] dfc967ecdd
Bump github.com/prometheus/client_golang from 1.12.2 to 1.13.0 (#62)
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] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-09-10 16:14:39 +02:00
Ben Kochie 34c5c19517
Remove armv7 container (#54)
Alpine's naming for armv7 doesn't match.

Signed-off-by: SuperQ <superq@gmail.com>
2022-08-08 18:10:42 +02:00
Ben Kochie b528194980
Fix Dockerfile (#53)
Fix apk package install.
* Cleanup gitignore.

Signed-off-by: SuperQ <superq@gmail.com>
2022-08-08 17:03:53 +02:00
Ben Kochie b63f56e391
Add smartmontools to container image (#51)
Switch to using Alpine container and install smartmontools so the
exporter can use the smartctl binary.

Signed-off-by: SuperQ <superq@gmail.com>
2022-08-08 15:44:02 +02:00
Ben Kochie 920c3429b1
Release 0.7.0 (#50)
First prometheus-community release.

* [FEATURE] Add various new metrics #14
* [BUGFIX] Fix exit code bit parsing #37

Signed-off-by: SuperQ <superq@gmail.com>
2022-08-05 03:37:13 +02:00
Andreas Fuchs d33d18e535
Return the cached value if it's not time to scan again yet (#18)
* Return the cached value if it's not time to scan again yet

This should ensure that if we have a valid value cached (which ought
to be every time after the first scan), we return it as metrics.

This fixes the crashes that would happen if queries happened earlier
than the re-scan interval allowed.

* Address review feedback: Shorten the time-to-scan logic

We can express this in a single if statement, so it takes fewer lines
to do the "should we check again" check.
2022-08-05 03:09:55 +02:00
Ben Kochie 1625848c5d
Merge pull request #37 from singron/fix-reversed-bits
Fix exit code bit parsing
2022-07-17 15:22:32 +02:00
Ben Kochie a60327af85
Merge pull request #49 from prometheus-community/repo_sync
Synchronize common files from prometheus/prometheus
2022-06-18 17:59:59 +02:00
Ben Kochie 3986e90973
Merge pull request #47 from prometheus-community/dependabot/go_modules/github.com/prometheus/client_golang-1.12.2
Bump github.com/prometheus/client_golang from 1.7.1 to 1.12.2
2022-06-18 17:59:33 +02:00
prombot 0872fb8589 Update common Prometheus files
Signed-off-by: prombot <prometheus-team@googlegroups.com>
2022-06-17 19:51:12 +00:00
SuperQ b9061f820c
Fix up deprecated client_golang use.
Signed-off-by: SuperQ <superq@gmail.com>
2022-06-17 13:27:10 +02:00
dependabot[bot] 85aa834641
Bump github.com/prometheus/client_golang from 1.7.1 to 1.12.2
Bumps [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang) from 1.7.1 to 1.12.2.
- [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.7.1...v1.12.2)

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

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-17 11:21:56 +00:00
Ben Kochie bd6504c9c3
Merge pull request #48 from prometheus-community/dependabot/go_modules/gopkg.in/yaml.v2-2.4.0
Bump gopkg.in/yaml.v2 from 2.3.0 to 2.4.0
2022-06-17 13:20:43 +02:00
dependabot[bot] 1d1cc8a382
Bump gopkg.in/yaml.v2 from 2.3.0 to 2.4.0
Bumps [gopkg.in/yaml.v2](https://github.com/go-yaml/yaml) from 2.3.0 to 2.4.0.
- [Release notes](https://github.com/go-yaml/yaml/releases)
- [Commits](https://github.com/go-yaml/yaml/compare/v2.3.0...v2.4.0)

---
updated-dependencies:
- dependency-name: gopkg.in/yaml.v2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-17 10:28:03 +00:00