跳转到主要内容

Tracarbon是一个Python库,可以跟踪您的设备能耗并计算您的碳排放。

项目描述

Tracarbon Logo

example workflow pypi doc licence

📌 概述

Tracarbon是一个Python库,可以跟踪您的设备能耗并计算您的碳排放。

它会在开始导出测量数据之前自动检测您的位置和设备。它可以作为具有已定义度量标准的CLI使用,或者通过定义您想要拥有的度量标准以编程方式使用API。

阅读更多关于这篇文章 这里

📦 哪里可以获取它

# Install Tracarbon
pip install tracarbon
# Install one or more exporters from the list
pip install 'tracarbon[datadog,prometheus,kubernetes]'

🔌 设备:能耗

设备 描述
Mac ✅ Mac的全局能耗(必须插入墙式适配器)。
Linux ⚠️ 仅限使用 RAPL。见 #1。如果可用,它可以在 Kubernetes 容器中使用 度量API
Windows ❌ 尚未实现。见 #184
云服务提供商 描述
AWS ✅ 使用硬件使用情况与 cloud-carbon-coefficients 的EC2实例碳排放数据集。
GCP ❌ 尚未实现。
Azure ❌ 尚未实现。

导出器

导出器 描述
Stdout 在Stdout中打印度量标准。
JSON 将指标写入JSON文件。
Prometheus 将指标发送到Prometheus。
Datadog 将指标发送到Datadog。

🗺️ 位置

位置 描述 来源
全球 使用CO2Signal或ElectricityMaps API以近实时方式获取最新的co2g/kwh。请参阅此处获取可用区域的列表。 CO2Signal APIElectricityMaps
欧洲 从欧洲环境局排放数据创建的静态文件,用于欧洲国家的co2g/kwh。 EEA网站
AWS AWS电网排放系数的静态文件。 cloud-carbon-coefficients

⚙️ 配置

可以从环境文件.env设置环境变量。

参数 描述
TRACARBON_CO2SIGNAL_API_KEY CO2SignalElectricityMaps收到的API密钥。
TRACARBON_CO2SIGNAL_URL CO2Signal的URL是默认端点,用于检索区域的最后已知状态,但也可以更改为ElectricityMaps
TRACARBON_METRIC_PREFIX_NAME 所有指标名称中使用的前缀。
TRACARBON_INTERVAL_IN_SECONDS 指标评估之间的秒数间隔。
TRACARBON_LOG_LEVEL 用于显示日志的级别。

🔎 使用

请求您的API密钥

  • 访问CO2Signal并获取您的免费非商业API密钥,或访问ElectricityMaps获取商业用途。
  • 此API用于检索您位置消耗的电力最后已知的碳强度(以gCO2eq/kWh计)。
  • 在环境变量、.env文件或配置中设置您的API密钥。
  • 如果您想在没有API密钥的情况下启动,也是可能的,碳强度将从文件中统计加载。
  • 启动Tracarbon 🚀

命令行

tracarbon run

API

from tracarbon import TracarbonBuilder, TracarbonConfiguration

configuration = TracarbonConfiguration() # Your configuration
tracarbon = TracarbonBuilder(configuration=configuration).build()
tracarbon.start()
# Your code
tracarbon.stop()

with tracarbon:
    # Your code

report = tracarbon.report() # Get the report

💻 开发

本地:使用Poetry

make init
make test-unit

🛡️ 许可证

Apache License 2.0

📚 文档

文档托管在此:https://fvaleye.github.io/tracarbon/documentation

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分布

tracarbon-0.7.2.tar.gz (48.9 kB 查看哈希)

上传时间

构建分布

tracarbon-0.7.2-py3-none-any.whl (55.4 kB 查看哈希值)

上传时间 Python 3

支持