Nvidia Jetson Prometheus Node Exporter (incl. GPU) - incl. JetPack 6.0
This project contains a node exporter variation building on jetson-stats (jtop) rather than tegrastats directly. We export the following metrics:
- CPU
- Memory
- GPU
- VRAM
- Swap
- Component Temperature
- Disk Utilization
- System Uptime
We do not export:
- Power consumption
Installation
You can either clone this repo or use pip for installation. Wheels or binaries are provided here: Jetson Stats Node Exporter Releases
Easy Installation via PyPi
Make sure your local installation of jetson-stats is 4.2.9. Otherwise, you will run into dependency issues.
pip install jetson-stats-node-exporter==0.1.3
Install from git
Installation with pip (no venv or conda due to jetson-stats dependency!):
> export JSN_RELEASE="0.1.3"
> sudo -H pip3 install -U https://github.com/laminair/jetson_stats_node_exporter/releases/download/$JSN_RELEASE/jetson_stats_node_exporter-$JSN_RELEASE-py3-none-any.whl
Install from source
Manual installation (may require sudo privileges due to jetson-stats dependency):
> git clone https://github.com/laminair/jetson_stats_node_exporter.git
> cd jetson_stats_node_exporter
> uv sync
Running the exporter
After installation the project is available as python module. Run it as follows:
python3 -m jetson_stats_node_exporter
This will spawn a prometheus node exporter service on port 9100 and you'll be able to scrape all statistics. Note: The command above can also be run as a systemd service in the background.
Creating a background service
The node exporter can be wrapped in a systemd service.
Place the following file in path /etc/systemd/system/jetson-stats-node-exporter.service
[Unit]
Description=Jetson Stats GPU Node Exporter
After=multi-user.target
Requires=jtop.service
[Service]
Type=simple
Restart=on-failure
RestartSec=10
User=root
Group=root
ExecStart=/usr/bin/python3 -m jetson_stats_node_exporter
[Install]
WantedBy=multi-user.target
Then run sudo systemctl start jetson-stats-node-exporter.
To check if the service is alive sudo systemctl status jetson-stats-node-exporter
Creating a docker image
The node exporter can be wrapped in a docker image and can be run via docker. If you use docker compose you can build the image directly via docker compose. Place the Dockerfile in the same directory as your docker-compose.yaml, or use the context option in your docker-compose.yaml to specify the folder containing the Dockerfile.
jetson_stats_node_exporter:
build:
context: <PATH_TO_JETSON_STATS_NODE_EXPORTER_PACKAGE>
dockerfile: Dockerfile
container_name: jetson_stats_node_exporter
restart: always
ports:
- "9100:9100" # Map internal port 9100 to a different external port 9100
volumes:
- /run/jtop.sock:/run/jtop.sock
healthcheck:
test: ["CMD", "curl", "--fail", "http://localhost:9100/metrics"]
interval: 30s
timeout: 10s
retries: 10
start_period: 60s
Important Note: When using docker, you may not be able to export disk statistics. Please see this GitHub issue.
Credits
This project is based on https://github.com/lipovsek/jetson_prometheus_exporter, which uses tegrastats.
Release files for jetson-stats-node-exporter 0.1.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| jetson_stats_node_exporter-0.1.3.tar.gz | 17.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| jetson_stats_node_exporter-0.1.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 36.6 kB
Release files / jetson_stats_node_exporter-0.1.3.tar.gz
| Download URL | jetson_stats_node_exporter-0.1.3.tar.gz |
|---|---|
| Size | 17.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d4907e2ec1019a22f7bdb6c48d0deb93344175133278b1803d787ba28d8e8228
|
|
BLAKE2b-256 checksum How to use checksums |
16759c889c2ee1114ec5198dc77b82e850f22f804e43e35a5258e1f921a65a01
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.10.4
|
Release files / jetson_stats_node_exporter-0.1.3-py3-none-any.whl
| Download URL | jetson_stats_node_exporter-0.1.3-py3-none-any.whl |
|---|---|
| Size | 18.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
986db868c7f1099790f26547cc55d5d2314b7bc9865af79dd7942b7dbd07533c
|
|
BLAKE2b-256 checksum How to use checksums |
904fe5ce2fcb568d5e0d4ba3fdd06021cb89b31b6a8a973e47b3de027e5e1278
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.10.4
|