Skip to content

Commit

Permalink
Add grafana dashboard
Browse files Browse the repository at this point in the history
  • Loading branch information
GDWR committed Feb 3, 2024
1 parent cfb9253 commit 46480d7
Show file tree
Hide file tree
Showing 7 changed files with 823 additions and 5 deletions.
31 changes: 26 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,6 @@ Jetson Exporter
[![GitHub release (latest by date)](https://img.shields.io/github/v/release/GDWR/jetson-exporter)](https://github.com/GDWR/jetson_exporter/releases)
[![GitHub](https://img.shields.io/github/license/GDWR/jetson-exporter)](https://github.com/GDWR/jetson_exporter/blob/main/LICENSE)

> [!CAUTION]
> Project is currently under creation, not ready for use.
Prometheus exporter for the Nvidia Jetson family.

Supported devices:
Expand All @@ -29,9 +26,33 @@ sudo dpkg -i jetson-exporter_0.0.1_arm64.deb
rm jetson-exporter_0.0.1_arm64.deb
```

## Grafana (dashboards) + Prometheus Example

Find a basic configuration of Prometheus + Grafana that can be used to monitor a Jetson device (on the same system).
This configuration is available in the [`example`](./example) directory.

A Grafana dashboard is available in the [`example/grafana/dashboards`](./example/grafana/dashboards) directory.

> [!NOTE]
> If you notice an issue with the grafana dashboard, please open an issue or submit a pull request.
![Grafana Dashboard](./assets/dashboard.webp)


## Contributing

Find a bug? Want to add a feature? Submit a pull request or open an issue. All contributions are welcome!
This repository has a configured [`.devcontainer`](https://code.visualstudio.com/docs/devcontainers/tutorial) for use with Visual Studio Code to make it easy to get involved.

In the scripts directory, a useful `tegrastats` emulator script from the [jetson_stats](https://github.com/rbonghi/jetson_stats) has been added
as a good means of testing your changes (until formal unit tests are added). To utilize this script use the command
```shell
go run cmd/jetson_exporter.go --tegrastats.path $PWD/scripts/tegrastats
```

Resources
---------
* [Repository Structure](https://github.com/golang-standards/project-layout)
* [`tegrastats` Utility](https://docs.nvidia.com/drive/drive-os-5.2.0.0L/drive-os/index.html#page/DRIVE_OS_Linux_SDK_Development_Guide/Utilities/util_tegrastats.html)
* [ridgerun's Evaluating Performance docs using `tegrastats`](https://developer.ridgerun.com/wiki/index.php/Xavier/JetPack_5.0.2/Performance_Tuning/Evaluating_Performance)
* [jetson_stats](https://github.com/rbonghi/jetson_stats)
* [ridgerun's Evaluating Performance docs using `tegrastats`](https://developer.ridgerun.com/wiki/index.php/Xavier/JetPack_5.0.2/Performance_Tuning/Evaluating_Performance)
* [Repository Structure](https://github.com/golang-standards/project-layout)
Binary file added assets/dashboard.webp
Binary file not shown.
18 changes: 18 additions & 0 deletions example/docker-compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# This configuration assumes that it is running on the same Jetson host. If you wish to have this on an external server
# Update `prometheus.yml` to have the correct target hostname.

services:
prometheus:
image: prom/prometheus
network_mode: host
command:
- --config.file=/etc/prometheus.yml
volumes:
- ./prometheus.yml:/etc/prometheus.yml

grafana:
image: grafana/grafana
network_mode: host
volumes:
- ./grafana/provisioning:/etc/grafana/provisioning
- ./grafana/dashboards:/var/lib/grafana/dashboards
Loading

0 comments on commit 46480d7

Please sign in to comment.