Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

Add Runtime Info API

未关闭
#58 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
4/5
预计耗时
3-5 天
新手友好度
35/100
Issue 类型
功能
描述清晰度
基本清楚
活跃度
停滞
技术栈
python
领域
api

调研方向

从 WIT 接口和 stubs/wit_world/imports/compute_runtime.py 中生成的绑定开始,然后追踪现有 Python SDK API 如何公开运行时信息。使用 Viceroy 的 mock 值验证返回类型、UUID 格式、布尔行为和合理的数值结果;当列出的模块级 getter 可用且经过测试后,工作即告完成。

由索引模型根据 Issue 内容生成。

描述

Overview

Add support for Fastly's Compute Runtime API, providing access to resource usage metrics and runtime environment information.

WIT Interface

interface compute-runtime {
  type vcpu-ms = u64;
  type memory-mib = u32;

  get-vcpu-ms: func() -> vcpu-ms;
  get-heap-mib: func() -> memory-mib;
  get-sandbox-id: func() -> string;
  get-hostname: func() -> string;
  get-pop: func() -> string;
  get-region: func() -> string;
  get-cache-generation: func() -> u64;
  get-customer-id: func() -> string;
  get-is-staging: func() -> bool;
  get-service-id: func() -> string;
  get-service-version: func() -> u64;
  get-namespace-id: func() -> string;
}

WIT bindings: stubs/wit_world/imports/compute_runtime.py

API Design

  • Simple function-based module API
  • Functions: vcpu_ms(), heap_usage_mib(), sandbox_id(), hostname(), pop(), region(), etc.
  • All functions are simple getters returning runtime information
  • No resource management needed (stateless queries)
  • Values equivalent to environment variables (FASTLY_HOSTNAME, FASTLY_SERVICE_ID, etc.)

Cross-SDK Comparison: All SDKs provide getter functions for CPU/memory/time info. Rust returns structured types, Go returns primitives, JS returns objects. Python should provide simple module-level getters (get_cpu_time_ns()).

Viceroy Testing

Viceroy provides default/mock values for runtime information. Tests can verify:

  • Function calls return expected types
  • Sandbox ID is a valid UUID format
  • Boolean flags work correctly
  • Numeric values are reasonable

Actual runtime values will differ between Viceroy and production. Tests should focus on API functionality rather than specific values.

Reference

主要语言
Python
星标
5
派生
1
PR 合并指标
30 天内没有已合并 PR

环境准备

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

fastly/compute-sdk-python 的其他 Issue

查看 fastly/compute-sdk-python 的全部 Issue

相似的 Issue

更多 Python Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。