Commit graph

265 commits

Author SHA1 Message Date
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
Ben Kochie
0043cb3795
Merge pull request #46 from prometheus-community/dependabot/go_modules/github.com/tidwall/gjson-1.14.1
Bump github.com/tidwall/gjson from 1.6.0 to 1.14.1
2022-06-17 12:27:16 +02:00
dependabot[bot]
51d1548a77
Bump github.com/tidwall/gjson from 1.6.0 to 1.14.1
Bumps [github.com/tidwall/gjson](https://github.com/tidwall/gjson) from 1.6.0 to 1.14.1.
- [Release notes](https://github.com/tidwall/gjson/releases)
- [Commits](https://github.com/tidwall/gjson/compare/v1.6.0...v1.14.1)

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

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-17 10:13:25 +00:00
Ben Kochie
947536d060
Merge pull request #44 from prometheus-community/superq/update_build
Update build for prometheus-community
2022-06-17 12:13:03 +02:00
SuperQ
c0e4746c80
Update build for prometheus-community
Use standard Prometheus Community build infra.
* Update Go modules for new location
* Update references to github URLs
* Update for Go 1.17+

Signed-off-by: SuperQ <superq@gmail.com>
2022-06-17 12:04:48 +02:00
Eric Culp
6b6fd628d2 Fix exit code bit parsing
The previous code was parsing left-to-right, but the bits are actually
numbered right-to-left (least to most significant). Instead of
converting to strings, just use bitmasks.

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

Signed-off-by: Eric Culp <eculperic@gmail.com>
2022-03-17 16:57:34 -06:00
Горлов Максим
e27581d56a apply merges 2020-11-14 18:36:34 +03:00
Горлов Максим
e2df698099 Merge branch 'chripede-master' into merging_commits 2020-11-14 18:30:46 +03:00
Горлов Максим
7f4c259c12 chripede-master merge 2020-11-14 18:30:32 +03:00
Горлов Максим
1d8e99e0b3 Merge branch 'tavyc-master' into merging_commits 2020-11-14 17:58:02 +03:00
Горлов Максим
c962031b18 merging tavyc 2020-11-14 17:57:43 +03:00
Горлов Максим
cbc437fea9 Parsing smartctl error code; parsing resulting json for smartctl errors; docker moved to subfolder 2020-10-30 00:35:49 +03:00
Горлов Максим
09cfdec25a Collecting fake json script 2020-10-27 23:30:05 +03:00
Горлов Максим
7fa7a15525
Merge pull request #6 from langizoli/add/nvme-support
Add/nvme support
2020-10-27 23:02:54 +03:00
Christian Pedersen
593ca96a99 Automatically load the available devices 2020-10-06 13:05:00 +02:00
Christian Pedersen
315d1538aa Calculate bytes read/written 2020-10-02 15:14:40 +02:00
Christian Pedersen
1b15cbbec2 Add NVMe metrics 2020-10-02 13:30:45 +02:00
Octavian Cerna
6e30737bc3 mineDeviceStatistics: Flag the SATA PHY stats as valid. 2020-07-27 00:40:18 +03:00
Octavian Cerna
9e58dd6fd2 Add a new metric smartctl_device_erc_seconds for reporting the device Error Recovery Control (TLER) setting. 2020-07-27 00:37:43 +03:00
Octavian Cerna
53399a5e73 Add a new metrics smartctl_device_self_test_log_count and smartctl_device_self_test_log_error_count for the device SMART Self-Test Logs. 2020-07-27 00:16:08 +03:00
Octavian Cerna
3e17706839 Add a new metric smartctl_device_error_log_count for the SMART error log counts. 2020-07-26 23:49:09 +03:00
Octavian Cerna
e8d95208d7 Report SATA PHY stats to smartctl_device_statistics. 2020-07-26 23:35:22 +03:00
Octavian Cerna
3feff84fbb Add a new metric smartctl_device_state for the device state from ATA SCT. 2020-07-26 22:54:54 +03:00
Octavian Cerna
9e10465744 Add a new metric smartctl_device_status for the SMART health status. 2020-07-26 22:31:04 +03:00
Octavian Cerna
81e49a31c3 Adjust the Makefile for the conversion to a Go module. 2020-07-26 21:10:56 +03:00
Octavian Cerna
774dee6012 Convert to Go module. 2020-07-26 21:08:03 +03:00
Zoltan Langi
9666ec9296 fixed format 2019-12-19 12:17:10 +01:00
Zoltan Langi
a3ee441193 fixed the config file 2019-12-19 11:22:14 +01:00
Zoltan Langi
965204547a I've added support for NVMe drives and also created a docker file so a container can be built.
I've added the following metrics for the NVMe drives:
smart_status, critical_warning, available_spare, media_errors
2019-12-19 11:17:35 +01:00
Горлов Максим
a68a2861e5
Update README.md 2019-08-26 11:27:28 +03:00