Sign inSign up

adaptant/edgetpu-exporter

By adaptant

Updated over 5 years ago

Prometheus Exporter for EdgeTPU Metrics

Image
1

885

adaptant/edgetpu-exporter repository overview

EdgeTPU Prometheus Exporter

Build Status Quality Gate Status

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:

MetricDescription
edgetpu_num_devicesNumber of EdgeTPU devices
edgetpu_temperature_celsiusEdgeTPU 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 LabelLabelling SourceSupported Devices
kkohtaka.org/edgetpuEdgeTPU Device PluginUSB
feature.node.kubernetes.io/usb-fe_1a6e_089a.presentnode-feature-discoveryUSB
feature.node.kubernetes.io/pci-0880_1ac1.presentnode-feature-discoveryPCIe, Coral Dev Board
beta.devicetree.org/fsl-imx8mq-phanbellk8s-dt-node-labellerCoral Dev Board

Features and bugs

Please file feature requests and bugs in the issue 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.

Tag summary

Content type

Image

Digest

Size

5.6 MB

Last updated

over 5 years ago

docker pull adaptant/edgetpu-exporter