Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/adaptant-labs/edgetpu-exporter
Prometheus Exporter for EdgeTPU Metrics
https://github.com/adaptant-labs/edgetpu-exporter
edgetpu edgetpu-exporter edgetpu-metrics monitoring prometheus prometheus-exporter prometheus-metrics
Last synced: about 1 month ago
JSON representation
Prometheus Exporter for EdgeTPU Metrics
- Host: GitHub
- URL: https://github.com/adaptant-labs/edgetpu-exporter
- Owner: adaptant-labs
- License: apache-2.0
- Created: 2020-05-30T11:34:27.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2021-01-20T11:38:45.000Z (over 3 years ago)
- Last Synced: 2024-06-20T12:38:03.315Z (3 months ago)
- Topics: edgetpu, edgetpu-exporter, edgetpu-metrics, monitoring, prometheus, prometheus-exporter, prometheus-metrics
- Language: Go
- Size: 21.5 KB
- Stars: 12
- Watchers: 2
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# EdgeTPU Prometheus Exporter
[![Build Status](https://travis-ci.com/adaptant-labs/edgetpu-exporter.svg?branch=master)](https://travis-ci.com/adaptant-labs/edgetpu-exporter#)
[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=adaptant-labs_edgetpu-exporter&metric=alert_status)](https://sonarcloud.io/dashboard?id=adaptant-labs_edgetpu-exporter)This is a Prometheus Exporter for EdgeTPU metrics.
## Building and Installing
Building and installing is the same as for other Go projects:
```
$ go get github.com/adaptant-labs/edgetpu-exporter
```## Usage
`edgetpu-exporter` can be run as-is without any additional configuration.
```
$ edgetpu-exporter --help
EdgeTPU Prometheus Exporter
Usage: edgetpu-exporter [flags]-port int
Port to listen to (default 8080)
-sysfs string
Mountpoint of sysfs instance to scan (default "/sys")
```By default, it will listen on port `8080`, but this can be changed via the `-port` argument.
## Metrics
The following metrics are exported:
| Metric | Description |
|--------|-------------|
| edgetpu_num_devices | Number of EdgeTPU devices |
| edgetpu_temperature_celsius | EdgeTPU device temperature in Celsius (per device) |Note that not all Apex device types will support temperature checks, there is presently no mechanism by which to obtain
a temperature reading from USB-attached devices.Viewed from the exporter:
```
# HELP edgetpu_num_devices Number of EdgeTPU devices
# TYPE edgetpu_num_devices gauge
edgetpu_num_devices 1
# HELP edgetpu_temperature_celsius EdgeTPU device temperature in Celsius
# TYPE edgetpu_temperature_celsius gauge
edgetpu_temperature_celsius{name="apex_0"} 49.3
```## Docker Images
Multi-arch Docker images are available on Docker Hub at [adaptant/edgetpu-exporter].
## Deployment via Kubernetes
`edgetpu-exporter` can be installed directly as a `DaemonSet` on matching nodes:
```
$ kubectl apply -f https://raw.githubusercontent.com/adaptant-labs/edgetpu-exporter/edgetpu-daemonset.yaml
```
The node selection criteria depends on the existence of node labels designating the existence of an EdgeTPU within the
node. The list of node labels and their respective labelling sources are listed below:| Node Label | Labelling Source | Supported Devices |
|------------|------------------|-------------------|
| kkohtaka.org/edgetpu | [EdgeTPU Device Plugin][edgetpu-device-plugin] | USB |
| feature.node.kubernetes.io/usb-fe_1a6e_089a.present | [node-feature-discovery] | USB |
| feature.node.kubernetes.io/pci-0880_1ac1.present | [node-feature-discovery] | PCIe, Coral Dev Board |
| beta.devicetree.org/fsl-imx8mq-phanbell | [k8s-dt-node-labeller] | Coral Dev Board |## Features and bugs
Please file feature requests and bugs in the [issue tracker][tracker].
## Acknowledgements
This project has received funding from the European Union’s Horizon 2020 research and innovation programme under grant
agreement No 825480 ([SODALITE]).## License
`edgetpu-exporter` is licensed under the terms of the Apache 2.0 license, the full
version of which can be found in the LICENSE file included in the distribution.[tracker]: https://github.com/adaptant-labs/edgetpu-exporter/issues
[adaptant/edgetpu-exporter]: https://hub.docker.com/repository/docker/adaptant/edgetpu-exporter
[k8s-dt-node-labeller]: https://github.com/adaptant-labs/k8s-dt-node-labeller
[node-feature-discovery]: https://github.com/kubernetes-sigs/node-feature/discovery
[edgetpu-device-plugin]: https://github.com/kkohtaka/edgetpu-device-plugin
[SODALITE]: https://sodalite.eu