- Home
- Disk Health Monitoring Software
- smartctl_exporter
smartctl_exporter
What it is
smartctl_exporter is a free Linux and self-hosted exporter that sends smartctl statistics to Prometheus for SMART monitoring. It reads JSON output from smartctl and requires smartmontools version 7.0 or later. If no devices are specified, it scans for available devices and can rescan when devices appear or disappear. Metrics are served at /metrics by default on port 9633. TLS and basic authentication are supported through a web configuration file, and Linux deployments can use systemd socket activation instead of port listeners. The README includes a Docker Compose example using the project image in privileged mode as root; smartctl may also need root access for devices such as SATA drives. Listed capabilities include control-plane monitoring and managed Kubernetes support, with 10 days of data retention. The project identifies its license as Apache-2.0. Version 0.15.0 lists additional temperature, endurance, and verify-error metrics, along with support for NVMe devices behind bridges. The Free plan costs nothing.
For and against
For
- Free plan costs nothing.
- Scans for devices and can rescan for changes.
- Supports TLS and basic authentication.
- Can use systemd socket activation on Linux.
Against
- Requires smartmontools version 7.0 or later.
- Device access may require root privileges.
- Listed data retention is 10 days.
The verdict
smartctl_exporter provides a focused route for collecting smartctl statistics in Prometheus. Check the smartmontools requirement and device permissions before deploying it.
Who it suits
It suits Linux operators who want to expose drive statistics to Prometheus, including teams using managed Kubernetes. Device access may require running smartctl as root.
Plans and prices
Free
Open-source exporter; requires smartmontools ≥ 7.0
Read 7 Oct 2026 · github.com
On the record
- Access requirement
- The README says smartctl needs to run as root for device access such as SATA access.github.com · read 7 Oct 2026
- Data source
- The exporter uses JSON output from smartctl and requires smartmontools version 7.0 or later.github.com · read 7 Oct 2026
- Deployment
- The README provides a Docker Compose example using the prometheuscommunity/smartctl-exporter image, privileged mode, and root user.github.com · read 7 Oct 2026
- Device discovery
- It scans the system for available devices by default when no devices are specified, and can rescan for devices that appear or disappear.github.com · read 7 Oct 2026
- Latest release
- The releases page lists version 0.15.0, dated 2026-09-01, with release assets and source archives.github.com · read 7 Oct 2026
- License
- The repository identifies its license as Apache-2.0.github.com · read 7 Oct 2026
- Linux feature
- On Linux, it can use systemd socket activation instead of port listeners.github.com · read 7 Oct 2026
- Metrics endpoint
- The default metrics path is /metrics and the default listen address uses port 9633.github.com · read 7 Oct 2026
- Prometheus integration
- The project describes its purpose as exporting smartctl statistics to Prometheus.github.com · read 7 Oct 2026
- Purpose
- smartctl_exporter exports smartctl statistics to Prometheus.github.com · read 7 Oct 2026
- Recent features
- Version 0.15.0 lists additional temperature values, endurance and verify-error metrics, and handling for NVMe devices behind bridges.github.com · read 7 Oct 2026
- Security
- The exporter supports TLS and basic authentication through a web configuration file.github.com · read 7 Oct 2026
- Security reporting
- The project directs security issue reports to the Prometheus security policy.github.com · read 7 Oct 2026
- Support
- The README invites users to file a feature request with the desired metric and exported smartctl JSON data.github.com · read 7 Oct 2026