Scaphandre

An open source software agent to track energy consumption of ICT services from the servers.
https://github.com/hubblo-org/scaphandre

Category: Consumption
Sub Category: Computation and Communication

Keywords

carbon-footprint electricity electricity-consumption electricity-meter energy energy-consumption energy-efficiency energy-monitor greenit hacktoberfest measure prometheus qemu rust rust-lang sustainability virtual-machine virtual-machines wattmeter watts

Keywords from Contributors

climate-change sustainable-software cloud-native carbon-emissions climate energy-data green-ai green-computing green-software sustainable-ai

Last synced: about 1 hour ago
JSON representation

Repository metadata

⚡ Energy consumption metrology agent. Let "scaph" dive and bring back the metrics that will help you make your systems and applications more sustainable !

README.md


Scaphandre [skafɑ̃dʁ] is a metrology agent dedicated to electric power and energy consumption metrics. The goal of the project is to permit to any company or individual to measure the power consumption of its tech services and get this data in a convenient form, sending it through any monitoring or data analysis toolchain.

Scaphandre means heavy diving suit in 🇫🇷. It comes from the idea that tech related services often don't track their power consumption and thus don't expose it to their clients. Most of the time the reason is a presumed bad ROI. Scaphandre makes, for tech providers and tech users, easier and cheaper to go under the surface to bring back the desired power consumption metrics, take better sustainability focused decisions, and then show the metrics to their clients to allow them to do the same.

This project was born from a deep sense of duty from tech workers. Please refer to the why section to know more about its goals.

Warning: this is still a very early stage project. Any feedback or contribution will be highly appreciated. Please refer to the contribution section.

Fmt+Clippy

Join us on Gitter or Matrix !


✨ Features

  • measuring power/energy consumed on bare metal hosts
  • measuring power/energy consumed of qemu/kvm virtual machines from the host
  • exposing power/energy metrics of a virtual machine, to allow manipulating those metrics in the VM as if it was a bare metal machine (relies on hypervisor features)
  • exposing metrics as a prometheus (HTTP) exporter
  • sending metrics in push mode to a prometheus Push Gateway
  • sending metrics to riemann
  • sending metrics to Warp10
  • works on kubernetes
  • storing power consumption metrics in a JSON file
  • showing basic power consumption metrics in the terminal
  • operating systems supported so far : Gnu/Linux, Windows 10, 11 and Server 2016/2019/2022
  • packages available for RHEL 8 and 9, Debian 11 and 12 and Windows, also NixOS (community support)

Here is an example dashboard built thanks to scaphandre: https://metrics.hubblo.org.

📄 How to ... ?

You'll find everything you may want to know about scaphandre in the documentation, like:

If you are only interested in the code documentation here it is.

📅 Roadmap

The ongoing roadmap can be seen here. Feature requests are welcome, please join us.

⚖️ Footprint

In opposition to its name, scaphandre aims to be as light and clean as possible. One of the main focus areas of the project is to come as close as possible to a 0 overhead, both about resources consumption and power consumption.

🙏 Sponsoring

If you like this project and would like to provide financial help, here's our sponsoring page.
Thanks a lot for considering it !

Citation (CITATION)

@software{scaphandre,
  author       = {Benoit Petit},
  title        = {scaphandre},
  year         = 2023,
  version      = {v1.0},
  url          = {https://github.com/hubblo-org/scaphandre}
}

Owner metadata


GitHub Events

Total
Last Year

Committers metadata

Last synced: 1 day ago

Total Commits: 1,007
Total Committers: 28
Avg Commits per committer: 35.964
Development Distribution Score (DDS): 0.391

Commits in past year: 0
Committers in past year: 0
Avg Commits per committer in past year: 0.0
Development Distribution Score (DDS) in past year: 0.0

Name Email Commits
Benoit Petit b****t@h****g 613
Benoit Petit b****t@n****e 240
Uggla u****a@f****r 74
Ross Fairbanks r****s@r****m 16
olivier de Meringo d****o@g****m 11
Pierre Rust p****t@g****m 8
repair b****d@g****m 7
wallet77 w****7@g****m 7
Guillaume Raffin t****l@g****m 4
Ludovic Rousseau l****b@g****m 3
fvaleye f****e@g****m 3
Chris Adams c****s@p****k 2
Benoit Petit b****t@b****n 2
Chris Laprun m****m@g****m 2
Raffin, Guillaume g****n@a****t 2
Arthur Lutz a****z@l****r 1
Joel Takvorian j****i@r****m 1
Jérémie Drouet j****t@u****m 1
Jérémie Drouet j****t@g****m 1
Mike Russell m****l@g****m 1
Nicolas Trangosi n****i@d****m 1
Olivier Levitt o****t@g****m 1
Pierre Ozoux p****e@o****t 1
Ross Fairbanks r****7@u****m 1
Sebastian Werner w****r@t****e 1
codesee-maps[bot] 8****]@u****m 1
florimondmanca f****a@g****m 1
homersimpsons g****e@g****m 1

Committer domains:


Issue and Pull Request metadata

Last synced: 30 days ago

Total issues: 190
Total pull requests: 209
Average time to close issues: 5 months
Average time to close pull requests: 2 months
Total issue authors: 94
Total pull request authors: 44
Average comments per issue: 3.61
Average comments per pull request: 1.36
Merged pull request: 103
Bot issues: 0
Bot pull requests: 55

Past year issues: 8
Past year pull requests: 9
Past year average time to close issues: N/A
Past year average time to close pull requests: 18 days
Past year issue authors: 8
Past year pull request authors: 7
Past year average comments per issue: 0.25
Past year average comments per pull request: 1.67
Past year merged pull request: 3
Past year bot issues: 0
Past year bot pull requests: 0

More stats: https://issues.ecosyste.ms/repositories/lookup?url=https://github.com/hubblo-org/scaphandre

Top Issue Authors

  • bpetit (63)
  • Louan-Robert (5)
  • uggla (4)
  • demeringo (4)
  • TheElectronWill (4)
  • arthurzenika (3)
  • wanecek (3)
  • hrexha28 (3)
  • maethor (2)
  • ancoron (2)
  • mrchrisadams (2)
  • FranciscoSedeno (2)
  • PierreRust (2)
  • olepbr (2)
  • yunnniverse (2)

Top Pull Request Authors

  • dependabot[bot] (54)
  • bpetit (49)
  • uggla (24)
  • rossf7 (17)
  • demeringo (5)
  • bdromard (4)
  • jdrouet (4)
  • LarsSven (4)
  • PierreRust (3)
  • TheElectronWill (3)
  • manuelleduc (2)
  • fvaleye (2)
  • rsilva23 (2)
  • NateEag (2)
  • vbmade2000 (2)

Top Issue Labels

  • enhancement (81)
  • bug (79)
  • help wanted (30)
  • documentation (17)
  • good first issue (13)
  • Hacktoberfest (5)
  • Epic (3)
  • CI (2)

Top Pull Request Labels

  • dependencies (54)
  • enhancement (6)
  • documentation (2)
  • help wanted (1)

Package metadata

proxy.golang.org: github.com/hubblo-org/scaphandre

crates.io: scaphandre

Electric power/energy consumption monitoring agent.

  • Homepage: https://scaphandre.hubblo.org
  • Documentation: https://docs.rs/scaphandre/
  • Licenses: Apache-2.0
  • Latest release: 1.0.0 (published over 1 year ago)
  • Last Synced: 2025-09-30T02:38:11.083Z (1 day ago)
  • Versions: 8
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 12,274 Total
  • Rankings:
    • Stargazers count: 4.871%
    • Forks count: 7.641%
    • Average: 23.622%
    • Dependent repos count: 29.318%
    • Dependent packages count: 33.812%
    • Downloads: 42.469%
  • Maintainers (1)

Dependencies

.github/workflows/build-and-test.yml actions
  • actions-rs/cargo v1 composite
  • actions-rs/toolchain v1 composite
  • actions/checkout v2 composite
  • actions/setup-python v2 composite
  • ambimax/action-cancel-previous-runs v1 composite
  • crazy-max/ghaction-chocolatey v2 composite
.github/workflows/codesee-arch-diagram.yml actions
  • Codesee-io/codesee-detect-languages-action latest composite
  • Codesee-io/codesee-map-action latest composite
  • actions-rs/toolchain v1 composite
  • actions/checkout v2 composite
  • actions/setup-java v2 composite
  • actions/setup-node v2 composite
  • actions/setup-python v2 composite
  • ruby/setup-ruby v1 composite
.github/workflows/docker-release.yml actions
  • actions/checkout v3 composite
  • docker/build-push-action v2 composite
  • docker/login-action v1 composite
  • docker/metadata-action v3 composite
  • docker/setup-buildx-action v1 composite
  • docker/setup-qemu-action v1 composite
Cargo.lock cargo
  • 210 dependencies
Dockerfile docker
  • rust 1.59 build
  • ubuntu 20.04 build
docker-compose/grafana/Dockerfile docker
  • grafana/grafana latest build
docker-compose/prom/Dockerfile docker
  • prom/prometheus latest build
docker-compose/prom-dev/Dockerfile docker
  • prom/prometheus latest build
.github/workflows/bloat-test.yml actions
.github/workflows/oranda.yml actions
  • JamesIves/github-pages-deploy-action v4.4.1 composite
  • actions/checkout v3 composite
  • dtolnay/rust-toolchain stable composite
  • swatinem/rust-cache v2 composite
.github/workflows/python_build.yml actions
  • Swatinem/rust-cache v1 composite
  • actions-rs/toolchain v1 composite
  • actions/checkout v2 composite
  • actions/setup-python v2 composite
  • actions/setup-python v3 composite
Cargo.toml cargo
python/Cargo.lock cargo
  • 203 dependencies
python/Cargo.toml cargo
python/pyproject.toml pypi

Score: 20.314352942046256