Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Action/SCI] Metrics for Emissions factor (I) for Falco #39

Closed
3 tasks done
Tracked by #33
nikimanoledaki opened this issue Jan 25, 2024 · 8 comments
Closed
3 tasks done
Tracked by #33

[Action/SCI] Metrics for Emissions factor (I) for Falco #39

nikimanoledaki opened this issue Jan 25, 2024 · 8 comments

Comments

@nikimanoledaki
Copy link
Contributor

nikimanoledaki commented Jan 25, 2024

SCI = (E * I) + M per R

Carbon emission intensity per geographical region.

Acceptance Criteria

  • Identify the electricity grid of the Equinix geo we are using
  • Replace carbon coefficient in SCI dashboard with the Equinix-specific one
  • Add Emissions (I) to docs
@raymundovr
Copy link
Contributor

I'd love to help with this one :)

@rossf7
Copy link
Contributor

rossf7 commented Mar 1, 2024

Hi @nikimanoledaki @raymundovr,
for the dynamic emissions factor I'd like to suggest using the grid-intensity-go tool that @mrchrisadams and I maintain. https://github.com/thegreenwebfoundation/grid-intensity-go

It has a prometheus exporter that integrates with the Electricity Maps API free tier. It provides this carbon intensity metric we could use in the dashboard.

curl -s http://localhost:8000/metrics | grep grid_intensity_carbon_average
# HELP grid_intensity_carbon_average Average carbon intensity for the electricity grid in this location.
# TYPE grid_intensity_carbon_average gauge
grid_intensity_carbon_average{location="FR",node="kind-control-plane",provider="ElectricityMap",region="",units="gCO2e per kWh"} 39

We have a little bit of work to do as we need to push the container image and helm chart to a registry. We should be able to add that pretty quickly if we want to use grid-intensity-go for this. WDYT?

@raymundovr
Copy link
Contributor

raymundovr commented Mar 1, 2024

Thank you @rossf7 !
I was thinking a bit futher on the argument between "live" intensity with electricy maps and the static measurement. Could you please remind me which source / measurement was the one that you mentioned during the last call to use as static value and allow comparisons?

@rossf7
Copy link
Contributor

rossf7 commented Mar 1, 2024

@raymundovr My thinking was to use the IEA average carbon intensity figure for France. As I thought this was a common approach.

However looking at their site it looks more complex :( They have both paid and free datasets and I can't see a way to access the data. https://www.iea.org/data-and-statistics/data-product/emissions-factors-2022

In grid-intensity-go we embed a dataset from Ember Climate from 2021 as they publish data with a CC-BY-SA 4.0 license. https://ember-climate.org/ we could follow a similar approach.

@mrchrisadams it would be great to get your thoughts on this.

@mrchrisadams
Copy link

mrchrisadams commented Mar 1, 2024

hi @rossf7! For annual data, the easiest option I can think of might be to use the helpfully formatted data we have in CO2.js.

I've linked to the json file below, with France specifically:

https://github.com/thegreenwebfoundation/co2.js/blob/main/data/output/average-intensities.json#L422-L427

These are updated every month on a cronjob from Ember, to reflect any changes to their methodology, and represent the most up-to-date, easy to use open data that we can find.

The changes are also checked by Fershad Irani (@fershad) and myself to catch surprises in the numbers, and query them upstream. You can see the most recent example below:

thegreenwebfoundation/co2.js#190

(As an aside, if there is a simple way to trigger an update to grid-intensity-go, when PRs like are merged in, I would be all ears - maybe a build step in the go library when cutting new releases, or something smarter than that)

@rossf7
Copy link
Contributor

rossf7 commented Mar 1, 2024

Thank you @mrchrisadams using the value you have in CO2.js makes sense to me but I will defer to @nikimanoledaki and @raymundovr as they are driving this one!

I'm working on the embodied emissions factor for #40 using Boavizta's dataset.

@raymundovr
Copy link
Contributor

Thank you @mrchrisadams and @rossf7 for the great resources, really appreciated!
Linking the script that generates the json for reference: https://github.com/thegreenwebfoundation/co2.js/blob/main/data/functions/generate_average_co2.js

It seems reasonable to me to set this value for France in the board, at least to start with. What do you think @nikimanoledaki ?

@nikimanoledaki
Copy link
Contributor Author

Thank you @raymundovr @rossf7 @mrchrisadams :)
(I) is in the dashboard + docs have been added. Marking as completed! 🎉

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment