A Prometheus PySMART exporter
Project description
pySMART-exporter
Copyright (C) 2021 Naudit HPCN S.L.
PySMART-exporter is a simple Python prometheus exporter built on top of PySMART library.
Usage
Server mode
To Use the exporter in server mode you can simply run as
pysmart_exporter -l 0.0.0.0:9099
And configure your prometheus to access it.
File mode
If you whish to generate just a metric sample, you can run this:
pysmart_exporter -f out.txt -1
It may generate a file with a similar content as:
# HELP pysmart_info PySMART metric info
# TYPE pysmart_info gauge
pysmart_info{device="nvme0",firmware="ADHA0101",interface="nvme",model="KBG30ZMV256G TOSHIBA",rotation="None",serial="*********12P",size="256000000000",size_raw="256 GB",smart_capable="True",smart_enabled="True",ssd="True"} 1.0
# HELP pysmart_assessment PySMART metric assessment
# TYPE pysmart_assessment gauge
pysmart_assessment{device="nvme0",interface="nvme",pysmart_assessment="PASS"} 1.0
# HELP pysmart_temperature PySMART metric temperature
# TYPE pysmart_temperature gauge
pysmart_temperature{device="nvme0",interface="nvme"} 44.0
# HELP pysmart_size PySMART metric size
# TYPE pysmart_size gauge
pysmart_size{device="nvme0",interface="nvme"} 2.56e+011
# HELP pysmart_test_capabilities PySMART metric test_capabilities
# TYPE pysmart_test_capabilities gauge
pysmart_test_capabilities{device="nvme0",interface="nvme",pysmart_test_capabilities="conveyance"} 0.0
pysmart_test_capabilities{device="nvme0",interface="nvme",pysmart_test_capabilities="long"} 0.0
pysmart_test_capabilities{device="nvme0",interface="nvme",pysmart_test_capabilities="offline"} 0.0
pysmart_test_capabilities{device="nvme0",interface="nvme",pysmart_test_capabilities="selective"} 0.0
pysmart_test_capabilities{device="nvme0",interface="nvme",pysmart_test_capabilities="short"} 0.0
You can also set an interval with -i
instead of -1
to keep flushing data every n seconds
Installation
pySMART-exporter
is available on PyPI and installable via pip
::
python -m pip install pySMART-exporter
The only external (non-python) dependency is the smartctl
component of the smartmontools package. This should be pre-installed in most Linux distributions, or it can be obtained through your package manager. Likely one of the following::
apt-get install smartmontools
or
yum install smartmontools
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file pySMART-exporter-0.3.2.tar.gz
.
File metadata
- Download URL: pySMART-exporter-0.3.2.tar.gz
- Upload date:
- Size: 7.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.9.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f38cfb6d7926656b35fe64b7eb153c73388c64a7140c85634fe70bedffe01cc3 |
|
MD5 | 73c216477da1dc4816c6898cc7cd6597 |
|
BLAKE2b-256 | e0c91323f2ac0c3b664899485c549036ff95d2af88a1ed27c120bcac6b095f14 |
File details
Details for the file pySMART_exporter-0.3.2-py3-none-any.whl
.
File metadata
- Download URL: pySMART_exporter-0.3.2-py3-none-any.whl
- Upload date:
- Size: 7.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.9.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 120ebc0f21e6df2c4fb231bc9e4d50e214dc34e71cda7fbadbb4eab6be4481fc |
|
MD5 | 4ebfca72ec289bb25614e6f708a45633 |
|
BLAKE2b-256 | 22012921f9a7fd75c070a65b333780af4d59cb0a8a774676e9a4cea1757ab154 |