scaphandre

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

https://github.com/hubblo-org/scaphandre

Science Score: 41.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    1 of 25 committers (4.0%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (9.2%) to scientific vocabulary

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
Last synced: 6 months ago · JSON representation ·

Repository

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

Basic Info
  • Host: GitHub
  • Owner: hubblo-org
  • License: apache-2.0
  • Language: Rust
  • Default Branch: main
  • Homepage:
  • Size: 8.07 MB
Statistics
  • Stars: 1,816
  • Watchers: 23
  • Forks: 117
  • Open Issues: 95
  • Releases: 9
Topics
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
Created over 5 years ago · Last pushed about 1 year ago
Metadata Files
Readme Changelog Contributing Funding License Code of conduct Citation

README.md

Scaphandre

Your tech stack doesn't need so much energy ⚡


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 :fr:. 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 !

Owner

  • Name: Hubblo
  • Login: hubblo-org
  • Kind: organization
  • Email: contact@hubblo.org
  • Location: France

Supports organizations in the socio-ecological transformation of digital technologies.

Citation (CITATION)

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

GitHub Events

Total
  • Create event: 4
  • Release event: 1
  • Issues event: 10
  • Watch event: 192
  • Issue comment event: 34
  • Push event: 15
  • Pull request review event: 1
  • Pull request event: 9
  • Fork event: 14
Last Year
  • Create event: 4
  • Release event: 1
  • Issues event: 10
  • Watch event: 192
  • Issue comment event: 34
  • Push event: 15
  • Pull request review event: 1
  • Pull request event: 9
  • Fork event: 14

Committers

Last synced: 7 months ago

All Time
  • Total Commits: 1,007
  • Total Committers: 25
  • Avg Commits per committer: 40.28
  • Development Distribution Score (DDS): 0.153
Past Year
  • Commits: 310
  • Committers: 7
  • Avg Commits per committer: 44.286
  • Development Distribution Score (DDS): 0.065
Top Committers
Name Email Commits
Benoit Petit b****t@h****g 853
Uggla u****a@f****r 74
Ross Fairbanks r****s@r****m 17
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
Chris Laprun m****m@g****m 2
Jérémie Drouet j****t 2
Benoit Petit b****t@b****n 2
Raffin, Guillaume g****n@a****t 2
Joel Takvorian j****i@r****m 1
Arthur Lutz a****z@l****r 1
Mike Russell m****l@g****m 1
Olivier Levitt o****t@g****m 1
Pierre Ozoux p****e@o****t 1
codesee-maps[bot] 8****] 1
florimondmanca f****a@g****m 1
homersimpsons g****e@g****m 1
Nicolas Trangosi n****i@d****m 1
Sebastian Werner w****r@t****e 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • 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 requests: 103
  • Bot issues: 0
  • Bot pull requests: 55
Past Year
  • Issues: 8
  • Pull requests: 9
  • Average time to close issues: N/A
  • Average time to close pull requests: 18 days
  • Issue authors: 8
  • Pull request authors: 7
  • Average comments per issue: 0.25
  • Average comments per pull request: 1.67
  • Merged pull requests: 3
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
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)
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 Labels
Issue Labels
enhancement (81) bug (79) help wanted (30) documentation (17) good first issue (13) Hacktoberfest (5) Epic (3) CI (2)
Pull Request Labels
dependencies (54) enhancement (6) documentation (2) help wanted (1)

Packages

  • Total packages: 2
  • Total downloads:
    • cargo 11,834 total
  • Total dependent packages: 0
    (may contain duplicates)
  • Total dependent repositories: 0
    (may contain duplicates)
  • Total versions: 18
  • Total maintainers: 1
proxy.golang.org: github.com/hubblo-org/scaphandre
  • Versions: 10
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 6.5%
Average: 6.7%
Dependent repos count: 7.0%
Last synced: 6 months ago
crates.io: scaphandre

Electric power/energy consumption monitoring agent.

  • Versions: 8
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 11,834 Total
Rankings
Stargazers count: 4.9%
Forks count: 7.6%
Average: 23.6%
Dependent repos count: 29.3%
Dependent packages count: 33.8%
Downloads: 42.5%
Maintainers (1)
Last synced: 6 months ago

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