Robin H. Johnson
9113c6cf0f
feat: Better SCSI/SAS support
...
Fix the following metrics that were exported as zero because the
exporter did not know how to read them for SCSI devices:
- smartctl_device_bytes_read
- smartctl_device_bytes_written
- smartctl_device_power_cycle_count
New metrics:
- smartctl_read_errors_corrected_by_eccdelayed
- smartctl_read_errors_corrected_by_eccfast
- smartctl_write_errors_corrected_by_eccdelayed
- smartctl_write_errors_corrected_by_eccfast
Fix labels:
- smartctl_device{model_name} is now populated for SCSI/SAS, using
scsi_model_name.
New labels:
- smartctl_device{} gains:
scsi_product,scsi_revision,scsi_vendor,scsi_version
Signed-off-by: Robin H. Johnson <rjohnson@coreweave.com>
2023-10-16 10:15:57 -07:00
Robin H. Johnson
d90594ac23
fix: Remove confused metrics
...
The exporter presently has metrics that are nonsense for a given type of
drive, and remain at zero due to their defaults.
Change the behavior to NOT emit a metric if the underlying JSON field is
not present.
Future related work may include parsing the corresponding metrics for
SATA/SAS SSDs (e.g. `smartctl_device_percentage_used` could derived from
`SSD_Life_Left` on some drives).
Metrics no longer exported for the wrong type of drive:
- `smartctl_device_nvme_capacity_bytes` (NVME-specific)
- `smartctl_device_available_spare` (NVME-specific, ATA possible)
- `smartctl_device_available_spare_threshold` (NVME-specific, ATA
possible)
- `smartctl_device_critical_warning` (NVME-specific, ATA possible)
- `smartctl_device_interface_speed` (ATA-specific)
- `smartctl_device_media_errors` (NVME-specific, ATA possible)
- `smartctl_device_num_err_log_entries` (NVME-specific, SCSI uses
distinct metrics, ATA possible)
- `smartctl_device_nvme_capacity_bytes` (NVME-specific)
- `smartctl_device_percentage_used` (NVME-specific, ATA possible)
Signed-off-by: Robin H. Johnson <rjohnson@coreweave.com>
2023-10-16 10:12:40 -07:00
David Randall
558a760c14
Merge pull request #167 from prometheus-community/repo_sync
...
Synchronize common files from prometheus/prometheus
2023-10-02 19:24:23 -04:00
prombot
3f7a16c11b
Update common Prometheus files
...
Signed-off-by: prombot <prometheus-team@googlegroups.com>
2023-10-02 17:50:16 +00:00
David Randall
5d1212cc9a
Merge pull request #166 from prometheus-community/dependabot/go_modules/github.com/tidwall/gjson-1.17.0
...
Bump github.com/tidwall/gjson from 1.16.0 to 1.17.0
2023-10-01 18:58:55 -04:00
David Randall
10a9654740
Merge pull request #165 from prometheus-community/dependabot/go_modules/github.com/prometheus/client_golang-1.17.0
...
Bump github.com/prometheus/client_golang from 1.16.0 to 1.17.0
2023-10-01 18:57:53 -04:00
dependabot[bot]
3f98f3a9c4
Bump github.com/tidwall/gjson from 1.16.0 to 1.17.0
...
Bumps [github.com/tidwall/gjson](https://github.com/tidwall/gjson ) from 1.16.0 to 1.17.0.
- [Commits](https://github.com/tidwall/gjson/compare/v1.16.0...v1.17.0 )
---
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>
2023-10-01 15:39:23 +00:00
dependabot[bot]
6a97ceeee2
Bump github.com/prometheus/client_golang from 1.16.0 to 1.17.0
...
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] <support@github.com>
2023-10-01 15:39:16 +00:00
David Randall
23f00b2bcd
Merge pull request #164 from prometheus-community/repo_sync
...
Synchronize common files from prometheus/prometheus
2023-09-14 17:53:16 -04:00
prombot
516ae545ba
Update common Prometheus files
...
Signed-off-by: prombot <prometheus-team@googlegroups.com>
2023-09-14 17:50:36 +00:00
David Randall
8dc5d9ab2b
Merge pull request #162 from prometheus-community/repo_sync
...
Synchronize common files from prometheus/prometheus
2023-09-02 18:31:09 -04:00
prombot
4ec603a2f6
Update common Prometheus files
...
Signed-off-by: prombot <prometheus-team@googlegroups.com>
2023-09-02 17:50:53 +00:00
David Randall
6fce109f83
Merge pull request #161 from prometheus-community/dependabot/go_modules/github.com/tidwall/gjson-1.16.0
...
Bump github.com/tidwall/gjson from 1.14.4 to 1.16.0
2023-09-01 11:39:20 -04:00
dependabot[bot]
6846046a77
Bump github.com/tidwall/gjson from 1.14.4 to 1.16.0
...
Bumps [github.com/tidwall/gjson](https://github.com/tidwall/gjson ) from 1.14.4 to 1.16.0.
- [Commits](https://github.com/tidwall/gjson/compare/v1.14.4...v1.16.0 )
---
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>
2023-09-01 15:06:34 +00:00
David Randall
01de0c0ad3
Merge pull request #160 from k0ste/help
...
Release 0.11.0
2023-08-27 08:41:27 -04:00
Konstantin Shalygin
0c4dd1503f
Release 0.11.0
...
Signed-off-by: Konstantin Shalygin <k0ste@k0ste.ru>
2023-08-27 12:49:32 +03:00
David Randall
f3588bbcd3
Merge pull request #154 from k0ste/help2
...
Small fixes & added NVMe total capacity metric
2023-08-26 15:12:13 -04:00
Konstantin Shalygin
1ab518e696
* split block mine to mineBlockSize() from mineCapacity()
...
* remove redundant meta labels from SCSI metrics
* added `smartctl_device_nvme_capacity_bytes` metric
* for some devices, such as 2.5" NVMe Intel & Micron the `family` field may be empty
The `.user_capacity` exists only when NVMe have single namespace. Otherwise,
for NVMe deivces with multiple namespaces, when device name used witout
namespace number (exporter case) `.user_capacity` will be absent
```
smartctl --info --health --attributes \
--tolerance=verypermissive --nocheck=standby --format=brief --log=error \
/dev/nvme11 --json | jq '.user_capacity'
null
smartctl --info --health --attributes \
--tolerance=verypermissive --nocheck=standby --format=brief --log=error \
/dev/nvme11 --json | jq '.nvme_total_capacity'
3840755982336
```
Signed-off-by: Konstantin Shalygin <k0ste@k0ste.ru>
2023-08-26 21:28:31 +03:00
David Randall
4fe758eb74
Fix #158 : collect_fake_json.sh
...
Signed-off-by: David Randall <David@NiceGuyIT.biz>
2023-08-26 10:33:33 -04:00
David Randall
8ab045d1be
Merge pull request #156 from NiceGuyIT/fix/revert-pr150
...
Revert "fix Dockerfile for multi-arch"
2023-08-26 07:17:23 -04:00
David Randall
29c2f5dd44
Reverts prometheus-community/smartctl_exporter#150
...
Signed-off-by: David Randall <David@NiceGuyIT.biz>
2023-08-26 06:55:06 -04:00
David Randall
784061630a
Merge pull request #150 from jfcoz/fix/docker_arm64
...
fix Dockerfile for multi-arch
2023-08-26 05:19:24 -04:00
Julien Francoz
380f1e96e2
fix Dockerfile for multi-arch
...
Signed-off-by: Julien Francoz <julien-github@francoz.net>
2023-08-17 23:05:52 +02:00
David Randall
75c76b363f
Merge pull request #148 from leo-minorui/master
...
Readme issue
2023-08-16 19:54:34 -04:00
David Randall
e9ef093567
Merge pull request #147 from prometheus-community/superq/fix_gauge_name
...
Fix metricDeviceCount gauge name
2023-08-16 19:44:52 -04:00
Leo
64dcaa68df
Update README.md
...
suggestion
Signed-off-by: Leo <57588266+leo-minorui@users.noreply.github.com>
2023-08-16 16:17:51 +08:00
Leo
81cc487613
Update README.md
...
Signed-off-by: Leo <57588266+leo-minorui@users.noreply.github.com>
2023-08-16 16:00:58 +08:00
SuperQ
d5fb66c5f1
Fix metricDeviceCount gauge name
...
Prometheus naming conventions reserve `_count` for the counter in
histograms. For gauge values the naming convention is to use the plural
of the thing being counted.
Signed-off-by: SuperQ <superq@gmail.com>
2023-08-16 09:21:17 +02:00
David Randall
f5b403b5ba
Merge pull request #129 from Knalltuete5000/devices_count
...
Add counter for the number of devices configured or dynamically discovered
2023-08-15 19:17:09 -04:00
David Randall
a1e81266a7
Merge pull request #133 from nazar-pc/patch-1
...
Example of running with Docker
2023-08-15 19:02:17 -04:00
Ben Kochie
cbc6a3b545
Merge pull request #145 from prometheus-community/repo_sync
...
Synchronize common files from prometheus/prometheus
2023-08-13 05:23:15 +02:00
prombot
8a844499cf
Update common Prometheus files
...
Signed-off-by: prombot <prometheus-team@googlegroups.com>
2023-08-12 17:49:21 +00:00
David Randall
d5173a5b6e
Merge pull request #144 from prometheus-community/superq/update-linting
...
Update linting
2023-08-12 06:14:10 -04:00
David Randall
473af4f99f
Merge pull request #142 from k0ste/help2
...
Release 0.10.0
2023-08-12 05:26:21 -04:00
SuperQ
a9ea7d0e6b
Update linting
...
* Update upstream Prometheus golanci-lint CI config.
* Update upstream Prometheus Makefile.commmon.
* Update golangci-lint config.
Signed-off-by: SuperQ <superq@gmail.com>
2023-08-12 10:34:18 +02:00
Ben Kochie
670388cdce
Merge pull request #127 from prometheus-community/repo_sync
...
Synchronize common files from prometheus/prometheus
2023-08-12 10:33:09 +02:00
Konstantin Shalygin
46ba8da969
Release 0.10.0
...
Signed-off-by: Konstantin Shalygin <k0ste@k0ste.ru>
2023-08-10 22:02:17 +03:00
Konstantin Shalygin
2e780f279e
Update CHANGELOG.md
...
Co-authored-by: Ben Kochie <superq@gmail.com>
Signed-off-by: Konstantin Shalygin <k0ste@k0ste.ru>
2023-08-10 21:58:03 +03:00
Konstantin Shalygin
6d8ccdc85f
Release 0.9.2
...
Signed-off-by: Konstantin Shalygin <k0ste@k0ste.ru>
2023-08-10 21:58:03 +03:00
David Randall
05a503e023
Merge pull request #132 from prometheus-community/dependabot/go_modules/github.com/prometheus/client_golang-1.16.0
...
Bump github.com/prometheus/client_golang from 1.14.0 to 1.16.0
2023-08-10 13:56:30 -04:00
dependabot[bot]
90280d1efd
Bump github.com/prometheus/client_golang from 1.14.0 to 1.16.0
...
Bumps [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang ) from 1.14.0 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.14.0...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] <support@github.com>
2023-08-10 17:48:30 +00:00
David Randall
e5dbffc757
Merge pull request #125 from prometheus-community/dependabot/go_modules/github.com/prometheus/exporter-toolkit-0.10.0
...
Bump github.com/prometheus/exporter-toolkit from 0.9.1 to 0.10.0
2023-08-10 13:42:40 -04:00
dependabot[bot]
e61b719e3b
Bump github.com/prometheus/exporter-toolkit from 0.9.1 to 0.10.0
...
Bumps [github.com/prometheus/exporter-toolkit](https://github.com/prometheus/exporter-toolkit ) from 0.9.1 to 0.10.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.9.1...v0.10.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] <support@github.com>
2023-08-10 17:40:11 +00:00
David Randall
ef4fc654b4
Merge pull request #124 from prometheus-community/dependabot/go_modules/github.com/prometheus/common-0.44.0
...
Bump github.com/prometheus/common from 0.42.0 to 0.44.0
2023-08-10 13:32:59 -04:00
David Randall
8331d7f6a9
Merge pull request #137 from tekert/remove_duplicate2
...
Remove duplicate smartctl_device_status metric
2023-08-10 13:25:23 -04:00
David Randall
e5bf7aa1b2
Merge pull request #138 from tekert/fix_data_written_ssd
...
Fix reported Data bytes Read/Written on SSDs
2023-08-10 11:58:18 -04:00
David Randall
17207c7b4b
Merge pull request #141 from k0ste/help2
...
Added device name to logger rc code parser
2023-08-10 08:47:22 -04:00
David Randall
a03bac1f1d
Merge pull request #140 from Knalltuete5000/device_rescan
...
Add background scanning for devices
2023-08-10 08:44:42 -04:00
Niklas Schwarz
6f41855c36
Add background scanning for devices
...
Add a background routine to rescan in a specified interval for devices
Signed-off-by: Niklas Schwarz <schwarz.niklas@hotmail.de>
2023-08-10 12:10:39 +02:00
David Randall
6448d79458
Merge pull request #131 from jthiltges/pr/21upd
...
Critical metrics for SCSI disks added, rebased
2023-08-09 13:50:34 -04:00