smart-prom-next


Namesmart-prom-next JSON
Version 0.0.8 PyPI version JSON
download
home_pagehttps://github.com/PhilipMay/smart-prom-next
SummaryS.M.A.R.T. Prometheus Metrics Exporter
upload_time2023-01-11 18:26:07
maintainerPhilip May
docs_urlNone
authorPhilip May
requires_python>=3.7
license
keywords prometheus smart docker kubernetes monitoring metrics grafana hdd ssd hard disk
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # S.M.A.R.T. Prometheus Metrics Exporter

[![Docker images](https://img.shields.io/badge/Docker-image-blue)](https://github.com/PhilipMay/smart-prom-next/pkgs/container/smart-prom-next)
[![pypi](https://img.shields.io/pypi/v/smart-prom-next.svg)](https://pypi.python.org/pypi/smart-prom-next)\
[![MIT License](https://img.shields.io/github/license/PhilipMay/smart-prom-next)](https://github.com/PhilipMay/smart-prom-next/blob/main/LICENSE)
[![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-2.1-4baaaa.svg)](https://github.com/PhilipMay/smart-prom-next/blob/main/CODE_OF_CONDUCT.md)
[![Python Version](https://img.shields.io/pypi/pyversions/smart-prom-next)](https://www.python.org)
[![GitHub issues](https://img.shields.io/github/issues-raw/PhilipMay/smart-prom-next)](https://github.com/PhilipMay/smart-prom-next/issues)\
[![pytest status](https://github.com/PhilipMay/smart-prom-next/actions/workflows/pytest.yml/badge.svg)](https://github.com/PhilipMay/smart-prom-next/actions/workflows/pytest.yml)
[![Static Code Checks status](https://github.com/PhilipMay/smart-prom-next/actions/workflows/static_checks.yml/badge.svg)](https://github.com/PhilipMay/smart-prom-next/actions/workflows/static_checks.yml)\
[![Docker build Debian image](https://github.com/PhilipMay/smart-prom-next/actions/workflows/docker-build-debian.yml/badge.svg)](https://github.com/PhilipMay/smart-prom-next/actions/workflows/docker-build-debian.yml)
[![Docker build Alpine image](https://github.com/PhilipMay/smart-prom-next/actions/workflows/docker-build-alpine.yml/badge.svg)](https://github.com/PhilipMay/smart-prom-next/actions/workflows/docker-build-alpine.yml)
[![trivy](https://github.com/PhilipMay/smart-prom-next/actions/workflows/trivy.yml/badge.svg)](https://github.com/PhilipMay/smart-prom-next/actions/workflows/trivy.yml)

smart-prom-next is a [Prometheus](https://prometheus.io/docs/introduction/overview/) metric exporter for
[S.M.A.R.T.](https://en.wikipedia.org/wiki/S.M.A.R.T.) values of hard disks.
Python and the Linux tool [smartctl](https://www.smartmontools.org/browser/trunk/smartmontools/smartctl.8.in)
are used to read out the hard disk values. These are then exposed using
[Prometheus Python Client](https://github.com/prometheus/client_python) over network port 9902.

According to Wikipedia, the primary function of S.M.A.R.T. is to detect and report various indicators of drive
reliability with the intent of anticipating imminent hardware failures.

Currently, smart-prom-next is available as a
[docker image](https://github.com/PhilipMay/smart-prom-next/pkgs/container/smart-prom-next) and a
[pypi package](https://pypi.org/project/smart-prom-next/).

The Docker image is built from the slim version of the [official Python Docker image](https://hub.docker.com/_/python),
which uses [Debian Bullseye](https://www.debian.org/releases/bullseye/).
It is built for multiple platforms:\
linux/386, linux/amd64, linux/arm/v5, linux/arm/v7, linux/arm64/v8

The second Docker option is also built from the
[official Python Docker image](https://hub.docker.com/_/python),
but uses [Alpine](https://www.alpinelinux.org/).
It is built for multiple platforms:\
linux/386, linux/amd64, linux/arm/v6, linux/arm/v7, linux/arm64/v8

## Configuration Options / Environment Variables

smart-prom-next can be configured by the following environment variables:

- `PROMETHEUS_METRIC_PORT` - port number over which the Prometheus metrics are exposed (default: 9902)
- `SMART_INFO_READ_INTERVAL_SECONDS` - time interval in seconds at which the SMART values of the hard disk are read
  (default: 60)

## Docker / docker-compose

The images, which are based on Debian Bullseye slim, can be accessed using:
`ghcr.io/philipmay/smart-prom-next:<version>-slim-bullseye` or `ghcr.io/philipmay/smart-prom-next:latest`

The images, which are based on Alpine, can be accessed using: `ghcr.io/philipmay/smart-prom-next:<version>-alpine`

The latest versions are visible in
[smart-prom-next GitHub packages](https://github.com/PhilipMay/smart-prom-next/pkgs/container/smart-prom-next).

Below is an example of a complete minimal `docker-compose.yml`, how smart-prom-next can be used with [docker-compose](https://docs.docker.com/compose/):

```yaml
version: "3.0"
services:
  smart-prom-next:
    # see https://github.com/PhilipMay/smart-prom-next/pkgs/container/smart-prom-next
    image: ghcr.io/philipmay/smart-prom-next:latest
    container_name: "smart-prom-next"
    restart: unless-stopped
    privileged: true
    ports:
      - 9902:9902
```

The `privileged: true` permission is absolutely necessary so that smartctl can also access the hard disks from
within the container.

**Security note:** In the production environment, you should leave out the `ports:` part in the `docker-compose.yml`
in the vast majority of configurations so that it is not visible to the outside. Instead, the container should
be assigned to a network in which the prometheus container is located. This looks like this:

```yaml
    networks:
      - monitor
```

To adjust the environment variables, the following settings can be added, for example:

```yaml
    environment:
      - PROMETHEUS_METRIC_PORT=9009
      - SMART_INFO_READ_INTERVAL_SECONDS=120
```

## Available Metrics

### `smart_prom_smart_status_failed`

The SMART health status of the device. A value of 0 indicates a healthy state.
A value of 1 means that the device has not passed the health check and there is a problem.

List of labels used (description see below): "device", "type", "model", "serial"

### `smart_prom_smartctl_exit_status`

The exit status (aka exit code or return code) of the `smartctl` tool.
Any value other than zero indicates an issue.
A more detailed description can be found in the EXIT STATUS chapter of the
[smartctl man pages](https://www.smartmontools.org/browser/trunk/smartmontools/smartctl.8.in).

List of labels used (description see below): "device", "type", "model", "serial"

### `smart_prom_smart_info`

The SMART Attributes.
A more detailed description can be found in the `-A, --attributes` chapter of the
[smartctl man pages](https://www.smartmontools.org/browser/trunk/smartmontools/smartctl.8.in).

List of labels used (description see below): "device", "type", "model", "serial", "attr_name", "attr_type", "attr_id"

### `smart_prom_nvme_smart_info`

[NVMe](https://en.wikipedia.org/wiki/NVM_Express) specific SMART attributes obtained from
the SMART/Health Information log.
A more detailed description can be found in the `-A, --attributes` chapter of the
[smartctl man pages](https://www.smartmontools.org/browser/trunk/smartmontools/smartctl.8.in).

List of labels used (description see below): "device", "type", "model", "serial", "attr_name"

### `smart_prom_scsi_smart_info`

[SCSI](https://en.wikipedia.org/wiki/SCSI) specific SMART attributes obtained from
the SMART/Health Information log.
A more detailed description can be found in the `-A, --attributes` chapter of the
[smartctl man pages](https://www.smartmontools.org/browser/trunk/smartmontools/smartctl.8.in).

List of labels used (description see below): "device", "type", "model", "serial", "attr_name", "attr_type"

### `smart_prom_temperature`

The temperature values of the device. These include not only the current temperature but also other values.

List of labels used (description see below): "device", "type", "model", "serial", "temperature_type"

### `smart_prom_scrape_iterations_total`

Counter how often the SMART values were scraped.

## Metrics Label

In this project, we use different labels on the metrics. These are described here:

- `device` - device file, e.g.: `/dev/nvme0`, `/dev/sda`
- `type` -  type of the device, e.g.: `ata`, `nvme`, `usbjmicron`
- `model` - model name, e.g.: `KXG6AZNV512G TOSHIBA`, `WDC WD3200BEVT-60ZCT0`
- `serial` - serial number, e.g.: `WD-WXE708D44703`, `Y9SF71LHFWZL`
- `temperature_type` - type of the temperature value, e.g.: `current`, `power_cycle_max`, `lifetime_max`, `op_limit_max`
- `attr_name` - SMART attribute name, e.g.: `raw_read_error_rate`, `reallocated_sector_ct`, `critical_warning`
- `attr_id` - SMART attribute id, e.g.: `1`, `3`, `4`
- `attr_type` - type of the respective SMART attribute - value is one of this: `value`, `worst`, `thresh`, `raw`, `failed_now`, `failed_past` -
  a detailed description can be found in the `-A, --attributes` chapter of the
  [smartctl man pages](https://www.smartmontools.org/browser/trunk/smartmontools/smartctl.8.in)

## Prometheus Alerts

Based on the metrics, [Prometheus alerts](https://prometheus.io/docs/prometheus/latest/configuration/alerting_rules/)
can be defined. Below are a few suggestions for `prometheus_rules.yml`:

```yaml
groups:
  - name: alert_rules
    rules:
  
      - alert: DiskFailing
        expr: smart_prom_smart_info{attr_type="failed_now"} == 1
        labels:
          severity: critical
        annotations:
          summary: "disk failing"

      - alert: DiskTemperatureHigh
        expr: smart_prom_temperature{temperature_type="current"} > 50
        labels:
          severity: warning
        annotations:
          summary: "disk temperature > 50"

      - alert: SMARTStatusFailing
        expr: smart_prom_smart_status_failed == 1
        labels:
          severity: critical
        annotations:
          summary: "SMART status failing"
```

## Release News

**Here you can find the latest versions of the software:**

- [docker image (Debian and Alpine)](https://github.com/PhilipMay/smart-prom-next/pkgs/container/smart-prom-next)
- [pypi package](https://pypi.org/project/smart-prom-next/)
- [GitHub releases](https://github.com/PhilipMay/smart-prom-next/releases)

**Important news and features in the releases:**

- add additional Alpine based image [#40](https://github.com/PhilipMay/smart-prom-next/issues/40) -
  version `0.0.4` at 2022-07-28
- add -slim-bullseye suffix to image [#44](https://github.com/PhilipMay/smart-prom-next/issues/44) -
  version `0.0.4` at 2022-07-28
- improve logs with "error" and "warning" prefix [#43](https://github.com/PhilipMay/smart-prom-next/issues/43) -
  version `0.0.4` at 2022-07-28
- [add scsi disk handling](https://github.com/PhilipMay/smart-prom-next/issues/12) - thanks to
  [Jopaul-John](https://github.com/Jopaul-John) - version `0.0.3` at 2022-07-20
- breaking change on `smart_prom_nvme_smart_info` - version `0.0.2` at 2022-06-23
- additional `smart_prom_scrape_iterations_total` metric - version `0.0.2` at 2022-06-23
- first pre-release - pre-release version `0.0.1rc9` at 2022-06-20

## Special Thanks

A special thanks goes to the following contributors:

- [@Jopaul-John](https://github.com/Jopaul-John) for his help in
  [adding scsi disk handling](https://github.com/PhilipMay/smart-prom-next/issues/12)
- [Michal Harakal (@michalharakal)](https://github.com/michalharakal)
  for the first PR of this project to
  [improve the docker-compose example](https://github.com/PhilipMay/smart-prom-next/pull/29)
- [Diego Heras (@ngosang)](https://github.com/ngosang) for his
  [help in adding the Alpine image](https://github.com/PhilipMay/smart-prom-next/issues/40#issuecomment-1197198019)

## Licensing

Copyright (c) 2022 Philip May

Licensed under the **MIT License** (the "License"); you may not use this file except in compliance with the License.
You may obtain a copy of the License by reviewing the file
[LICENSE](https://github.com/PhilipMay/smart-prom-next/blob/main/LICENSE) in the repository.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/PhilipMay/smart-prom-next",
    "name": "smart-prom-next",
    "maintainer": "Philip May",
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": "",
    "keywords": "prometheus,smart,docker,kubernetes,monitoring,metrics,grafana,hdd,ssd,hard disk",
    "author": "Philip May",
    "author_email": "philip@may.la",
    "download_url": "https://files.pythonhosted.org/packages/18/02/ab732a96ff24c9c729f333ae877506a20f2d91d72ece63c31fee7ef5b17f/smart_prom_next-0.0.8.tar.gz",
    "platform": null,
    "description": "# S.M.A.R.T. Prometheus Metrics Exporter\n\n[![Docker images](https://img.shields.io/badge/Docker-image-blue)](https://github.com/PhilipMay/smart-prom-next/pkgs/container/smart-prom-next)\n[![pypi](https://img.shields.io/pypi/v/smart-prom-next.svg)](https://pypi.python.org/pypi/smart-prom-next)\\\n[![MIT License](https://img.shields.io/github/license/PhilipMay/smart-prom-next)](https://github.com/PhilipMay/smart-prom-next/blob/main/LICENSE)\n[![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-2.1-4baaaa.svg)](https://github.com/PhilipMay/smart-prom-next/blob/main/CODE_OF_CONDUCT.md)\n[![Python Version](https://img.shields.io/pypi/pyversions/smart-prom-next)](https://www.python.org)\n[![GitHub issues](https://img.shields.io/github/issues-raw/PhilipMay/smart-prom-next)](https://github.com/PhilipMay/smart-prom-next/issues)\\\n[![pytest status](https://github.com/PhilipMay/smart-prom-next/actions/workflows/pytest.yml/badge.svg)](https://github.com/PhilipMay/smart-prom-next/actions/workflows/pytest.yml)\n[![Static Code Checks status](https://github.com/PhilipMay/smart-prom-next/actions/workflows/static_checks.yml/badge.svg)](https://github.com/PhilipMay/smart-prom-next/actions/workflows/static_checks.yml)\\\n[![Docker build Debian image](https://github.com/PhilipMay/smart-prom-next/actions/workflows/docker-build-debian.yml/badge.svg)](https://github.com/PhilipMay/smart-prom-next/actions/workflows/docker-build-debian.yml)\n[![Docker build Alpine image](https://github.com/PhilipMay/smart-prom-next/actions/workflows/docker-build-alpine.yml/badge.svg)](https://github.com/PhilipMay/smart-prom-next/actions/workflows/docker-build-alpine.yml)\n[![trivy](https://github.com/PhilipMay/smart-prom-next/actions/workflows/trivy.yml/badge.svg)](https://github.com/PhilipMay/smart-prom-next/actions/workflows/trivy.yml)\n\nsmart-prom-next is a [Prometheus](https://prometheus.io/docs/introduction/overview/) metric exporter for\n[S.M.A.R.T.](https://en.wikipedia.org/wiki/S.M.A.R.T.) values of hard disks.\nPython and the Linux tool [smartctl](https://www.smartmontools.org/browser/trunk/smartmontools/smartctl.8.in)\nare used to read out the hard disk values. These are then exposed using\n[Prometheus Python Client](https://github.com/prometheus/client_python) over network port 9902.\n\nAccording to Wikipedia, the primary function of S.M.A.R.T. is to detect and report various indicators of drive\nreliability with the intent of anticipating imminent hardware failures.\n\nCurrently, smart-prom-next is available as a\n[docker image](https://github.com/PhilipMay/smart-prom-next/pkgs/container/smart-prom-next) and a\n[pypi package](https://pypi.org/project/smart-prom-next/).\n\nThe Docker image is built from the slim version of the [official Python Docker image](https://hub.docker.com/_/python),\nwhich uses [Debian Bullseye](https://www.debian.org/releases/bullseye/).\nIt is built for multiple platforms:\\\nlinux/386, linux/amd64, linux/arm/v5, linux/arm/v7, linux/arm64/v8\n\nThe second Docker option is also built from the\n[official Python Docker image](https://hub.docker.com/_/python),\nbut uses [Alpine](https://www.alpinelinux.org/).\nIt is built for multiple platforms:\\\nlinux/386, linux/amd64, linux/arm/v6, linux/arm/v7, linux/arm64/v8\n\n## Configuration Options / Environment Variables\n\nsmart-prom-next can be configured by the following environment variables:\n\n- `PROMETHEUS_METRIC_PORT` - port number over which the Prometheus metrics are exposed (default: 9902)\n- `SMART_INFO_READ_INTERVAL_SECONDS` - time interval in seconds at which the SMART values of the hard disk are read\n  (default: 60)\n\n## Docker / docker-compose\n\nThe images, which are based on Debian Bullseye slim, can be accessed using:\n`ghcr.io/philipmay/smart-prom-next:<version>-slim-bullseye` or `ghcr.io/philipmay/smart-prom-next:latest`\n\nThe images, which are based on Alpine, can be accessed using: `ghcr.io/philipmay/smart-prom-next:<version>-alpine`\n\nThe latest versions are visible in\n[smart-prom-next GitHub packages](https://github.com/PhilipMay/smart-prom-next/pkgs/container/smart-prom-next).\n\nBelow is an example of a complete minimal `docker-compose.yml`, how smart-prom-next can be used with [docker-compose](https://docs.docker.com/compose/):\n\n```yaml\nversion: \"3.0\"\nservices:\n  smart-prom-next:\n    # see https://github.com/PhilipMay/smart-prom-next/pkgs/container/smart-prom-next\n    image: ghcr.io/philipmay/smart-prom-next:latest\n    container_name: \"smart-prom-next\"\n    restart: unless-stopped\n    privileged: true\n    ports:\n      - 9902:9902\n```\n\nThe `privileged: true` permission is absolutely necessary so that smartctl can also access the hard disks from\nwithin the container.\n\n**Security note:** In the production environment, you should leave out the `ports:` part in the `docker-compose.yml`\nin the vast majority of configurations so that it is not visible to the outside. Instead, the container should\nbe assigned to a network in which the prometheus container is located. This looks like this:\n\n```yaml\n    networks:\n      - monitor\n```\n\nTo adjust the environment variables, the following settings can be added, for example:\n\n```yaml\n    environment:\n      - PROMETHEUS_METRIC_PORT=9009\n      - SMART_INFO_READ_INTERVAL_SECONDS=120\n```\n\n## Available Metrics\n\n### `smart_prom_smart_status_failed`\n\nThe SMART health status of the device. A value of 0 indicates a healthy state.\nA value of 1 means that the device has not passed the health check and there is a problem.\n\nList of labels used (description see below): \"device\", \"type\", \"model\", \"serial\"\n\n### `smart_prom_smartctl_exit_status`\n\nThe exit status (aka exit code or return code) of the `smartctl` tool.\nAny value other than zero indicates an issue.\nA more detailed description can be found in the EXIT STATUS chapter of the\n[smartctl man pages](https://www.smartmontools.org/browser/trunk/smartmontools/smartctl.8.in).\n\nList of labels used (description see below): \"device\", \"type\", \"model\", \"serial\"\n\n### `smart_prom_smart_info`\n\nThe SMART Attributes.\nA more detailed description can be found in the `-A, --attributes` chapter of the\n[smartctl man pages](https://www.smartmontools.org/browser/trunk/smartmontools/smartctl.8.in).\n\nList of labels used (description see below): \"device\", \"type\", \"model\", \"serial\", \"attr_name\", \"attr_type\", \"attr_id\"\n\n### `smart_prom_nvme_smart_info`\n\n[NVMe](https://en.wikipedia.org/wiki/NVM_Express) specific SMART attributes obtained from\nthe SMART/Health Information log.\nA more detailed description can be found in the `-A, --attributes` chapter of the\n[smartctl man pages](https://www.smartmontools.org/browser/trunk/smartmontools/smartctl.8.in).\n\nList of labels used (description see below): \"device\", \"type\", \"model\", \"serial\", \"attr_name\"\n\n### `smart_prom_scsi_smart_info`\n\n[SCSI](https://en.wikipedia.org/wiki/SCSI) specific SMART attributes obtained from\nthe SMART/Health Information log.\nA more detailed description can be found in the `-A, --attributes` chapter of the\n[smartctl man pages](https://www.smartmontools.org/browser/trunk/smartmontools/smartctl.8.in).\n\nList of labels used (description see below): \"device\", \"type\", \"model\", \"serial\", \"attr_name\", \"attr_type\"\n\n### `smart_prom_temperature`\n\nThe temperature values of the device. These include not only the current temperature but also other values.\n\nList of labels used (description see below): \"device\", \"type\", \"model\", \"serial\", \"temperature_type\"\n\n### `smart_prom_scrape_iterations_total`\n\nCounter how often the SMART values were scraped.\n\n## Metrics Label\n\nIn this project, we use different labels on the metrics. These are described here:\n\n- `device` - device file, e.g.: `/dev/nvme0`, `/dev/sda`\n- `type` -  type of the device, e.g.: `ata`, `nvme`, `usbjmicron`\n- `model` - model name, e.g.: `KXG6AZNV512G TOSHIBA`, `WDC WD3200BEVT-60ZCT0`\n- `serial` - serial number, e.g.: `WD-WXE708D44703`, `Y9SF71LHFWZL`\n- `temperature_type` - type of the temperature value, e.g.: `current`, `power_cycle_max`, `lifetime_max`, `op_limit_max`\n- `attr_name` - SMART attribute name, e.g.: `raw_read_error_rate`, `reallocated_sector_ct`, `critical_warning`\n- `attr_id` - SMART attribute id, e.g.: `1`, `3`, `4`\n- `attr_type` - type of the respective SMART attribute - value is one of this: `value`, `worst`, `thresh`, `raw`, `failed_now`, `failed_past` -\n  a detailed description can be found in the `-A, --attributes` chapter of the\n  [smartctl man pages](https://www.smartmontools.org/browser/trunk/smartmontools/smartctl.8.in)\n\n## Prometheus Alerts\n\nBased on the metrics, [Prometheus alerts](https://prometheus.io/docs/prometheus/latest/configuration/alerting_rules/)\ncan be defined. Below are a few suggestions for `prometheus_rules.yml`:\n\n```yaml\ngroups:\n  - name: alert_rules\n    rules:\n  \n      - alert: DiskFailing\n        expr: smart_prom_smart_info{attr_type=\"failed_now\"} == 1\n        labels:\n          severity: critical\n        annotations:\n          summary: \"disk failing\"\n\n      - alert: DiskTemperatureHigh\n        expr: smart_prom_temperature{temperature_type=\"current\"} > 50\n        labels:\n          severity: warning\n        annotations:\n          summary: \"disk temperature > 50\"\n\n      - alert: SMARTStatusFailing\n        expr: smart_prom_smart_status_failed == 1\n        labels:\n          severity: critical\n        annotations:\n          summary: \"SMART status failing\"\n```\n\n## Release News\n\n**Here you can find the latest versions of the software:**\n\n- [docker image (Debian and Alpine)](https://github.com/PhilipMay/smart-prom-next/pkgs/container/smart-prom-next)\n- [pypi package](https://pypi.org/project/smart-prom-next/)\n- [GitHub releases](https://github.com/PhilipMay/smart-prom-next/releases)\n\n**Important news and features in the releases:**\n\n- add additional Alpine based image [#40](https://github.com/PhilipMay/smart-prom-next/issues/40) -\n  version `0.0.4` at 2022-07-28\n- add -slim-bullseye suffix to image [#44](https://github.com/PhilipMay/smart-prom-next/issues/44) -\n  version `0.0.4` at 2022-07-28\n- improve logs with \"error\" and \"warning\" prefix [#43](https://github.com/PhilipMay/smart-prom-next/issues/43) -\n  version `0.0.4` at 2022-07-28\n- [add scsi disk handling](https://github.com/PhilipMay/smart-prom-next/issues/12) - thanks to\n  [Jopaul-John](https://github.com/Jopaul-John) - version `0.0.3` at 2022-07-20\n- breaking change on `smart_prom_nvme_smart_info` - version `0.0.2` at 2022-06-23\n- additional `smart_prom_scrape_iterations_total` metric - version `0.0.2` at 2022-06-23\n- first pre-release - pre-release version `0.0.1rc9` at 2022-06-20\n\n## Special Thanks\n\nA special thanks goes to the following contributors:\n\n- [@Jopaul-John](https://github.com/Jopaul-John) for his help in\n  [adding scsi disk handling](https://github.com/PhilipMay/smart-prom-next/issues/12)\n- [Michal Harakal (@michalharakal)](https://github.com/michalharakal)\n  for the first PR of this project to\n  [improve the docker-compose example](https://github.com/PhilipMay/smart-prom-next/pull/29)\n- [Diego Heras (@ngosang)](https://github.com/ngosang) for his\n  [help in adding the Alpine image](https://github.com/PhilipMay/smart-prom-next/issues/40#issuecomment-1197198019)\n\n## Licensing\n\nCopyright (c) 2022 Philip May\n\nLicensed under the **MIT License** (the \"License\"); you may not use this file except in compliance with the License.\nYou may obtain a copy of the License by reviewing the file\n[LICENSE](https://github.com/PhilipMay/smart-prom-next/blob/main/LICENSE) in the repository.\n",
    "bugtrack_url": null,
    "license": "",
    "summary": "S.M.A.R.T. Prometheus Metrics Exporter",
    "version": "0.0.8",
    "split_keywords": [
        "prometheus",
        "smart",
        "docker",
        "kubernetes",
        "monitoring",
        "metrics",
        "grafana",
        "hdd",
        "ssd",
        "hard disk"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "01efbaaa5a169c2c36d6fdb78e2da08fda4f1977d01534210a3a28d2c8f1e19b",
                "md5": "e579b7c2dba670e2167ecb28df8fd0b5",
                "sha256": "d44c0f746130dbdd92bac096275515adfb37c1f127e324ab556c49ed20f56cb1"
            },
            "downloads": -1,
            "filename": "smart_prom_next-0.0.8-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "e579b7c2dba670e2167ecb28df8fd0b5",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.7",
            "size": 10403,
            "upload_time": "2023-01-11T18:26:05",
            "upload_time_iso_8601": "2023-01-11T18:26:05.803957Z",
            "url": "https://files.pythonhosted.org/packages/01/ef/baaa5a169c2c36d6fdb78e2da08fda4f1977d01534210a3a28d2c8f1e19b/smart_prom_next-0.0.8-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "1802ab732a96ff24c9c729f333ae877506a20f2d91d72ece63c31fee7ef5b17f",
                "md5": "834f80fa1de03bafa2abc254fddca493",
                "sha256": "6b135743d38488e143956655d886b48fe63c47e7dc4c7022924c9b02d3068204"
            },
            "downloads": -1,
            "filename": "smart_prom_next-0.0.8.tar.gz",
            "has_sig": false,
            "md5_digest": "834f80fa1de03bafa2abc254fddca493",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 15920,
            "upload_time": "2023-01-11T18:26:07",
            "upload_time_iso_8601": "2023-01-11T18:26:07.684394Z",
            "url": "https://files.pythonhosted.org/packages/18/02/ab732a96ff24c9c729f333ae877506a20f2d91d72ece63c31fee7ef5b17f/smart_prom_next-0.0.8.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-01-11 18:26:07",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "github_user": "PhilipMay",
    "github_project": "smart-prom-next",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "smart-prom-next"
}
        
Elapsed time: 0.03578s