Go to file
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
.circleci Release 0.7.0 (#50) 2022-08-05 03:37:13 +02:00
.github Update common Prometheus files 2022-06-17 19:51:12 +00:00
gentoo/app-metrics/smartctl_exporter Update build for prometheus-community 2022-06-17 12:04:48 +02:00
scripts Refactor exporter config (#68) 2022-10-03 11:16:00 +02:00
systemd systemd service 2019-08-15 00:04:32 +03:00
.gitignore Fix Dockerfile (#53) 2022-08-08 17:03:53 +02:00
.golangci.yml Refactor exporter config (#68) 2022-10-03 11:16:00 +02:00
.promu.yml Update build for prometheus-community 2022-06-17 12:04:48 +02:00
.yamllint Update build for prometheus-community 2022-06-17 12:04:48 +02:00
CHANGELOG.md Release 0.7.0 (#50) 2022-08-05 03:37:13 +02:00
CODE_OF_CONDUCT.md Update common Prometheus files 2022-06-17 19:51:12 +00:00
Dockerfile Fix Dockerfile (#53) 2022-08-08 17:03:53 +02:00
EXAMPLE.md right example 2019-08-17 13:26:31 +03:00
LICENSE Initial commit 2019-08-14 23:28:21 +03:00
Makefile Remove armv7 container (#54) 2022-08-08 18:10:42 +02:00
Makefile.common Update common Prometheus files (#70) 2022-09-20 20:14:46 +02:00
README.md Refactor exporter config (#68) 2022-10-03 11:16:00 +02:00
SECURITY.md Update common Prometheus files 2022-06-17 19:51:12 +00:00
VERSION Release 0.7.0 (#50) 2022-08-05 03:37:13 +02:00
collect_fake_json.sh Parsing smartctl error code; parsing resulting json for smartctl errors; docker moved to subfolder 2020-10-30 00:35:49 +03:00
gjsonext.go Release 0.7.0 (#50) 2022-08-05 03:37:13 +02:00
go.mod Refactor exporter config (#68) 2022-10-03 11:16:00 +02:00
go.sum Refactor exporter config (#68) 2022-10-03 11:16:00 +02:00
main.go Refactor exporter config (#68) 2022-10-03 11:16:00 +02:00
metrics.go Release 0.7.0 (#50) 2022-08-05 03:37:13 +02:00
readjson.go Refactor exporter config (#68) 2022-10-03 11:16:00 +02:00
smartctl.go Refactor exporter config (#68) 2022-10-03 11:16:00 +02:00
smartctl_exporter.yaml apply merges 2020-11-14 18:36:34 +03:00
smartctlinfo.go Release 0.7.0 (#50) 2022-08-05 03:37:13 +02:00

README.md

CircleCI Container Repository on Quay

smartctl_exporter

Export smartctl statistics to prometheus

Example output you can show in EXAMPLE.md

Need more?

If you need additional metrics - contact me :) Create a feature request, describe the metric that you would like to have and attach exported from smartctl json file

Requirements

smartmontools >= 7.0, because export to json released in 7.0

Configuration

Command line options

The exporter will scan the system for available devices if no --smartctl.device flags are used.

usage: smartctl_exporter [<flags>]

Flags:
  -h, --help                   Show context-sensitive help (also try --help-long and --help-man).
      --smartctl.path="/usr/sbin/smartctl"  
                               The path to the smartctl binary
      --smartctl.interval=60s  The interval between smarctl polls
      --smartctl.device=SMARTCTL.DEVICE ...  
                               The device to monitor (repeatable)
      --web.listen-address=":9633"  
                               Address to listen on for web interface and telemetry
      --web.telemetry-path="/metrics"  
                               Path under which to expose metrics
      --web.config.file=""     [EXPERIMENTAL] Path to configuration file that can enable TLS or authentication.
      --log.level=info         Only log messages with the given severity or above. One of: [debug, info, warn,
                               error]
      --log.format=logfmt      Output format of log messages. One of: [logfmt, json]
      --version                Show application version.

TLS and basic authentication

This exporter supports TLS and basic authentication.

To use TLS and/or basic authentication, you need to pass a configuration file using the --web.config.file parameter. The format of the file is described in the exporter-toolkit repository.