GFDiagnosticSnapshotProvider¶
API Reference / Standard / 类索引
- 路径:
addons/gf/standard/utilities/debug/gf_diagnostic_snapshot_provider.gd - 模块:
Standard - 继承:
RefCounted - API:
public - 类别:协议与扩展点 (
protocol) - 首次版本:
unreleased
按请求求值的诊断快照 Provider 协议。 Provider 不会被轮询或随普通快照隐式执行。项目必须显式请求稳定 Provider ID, 输出才会由 GFDiagnosticsUtility 在重入保护、结构预算和脱敏边界内采集。
成员概览¶
| 类型 | 名称 | 签名 |
|---|---|---|
| 常量 | DEFAULT_MAX_DURATION_USEC |
const DEFAULT_MAX_DURATION_USEC: int = 50_000 |
| 属性 | provider_id |
var provider_id: StringName = &"": |
| 属性 | max_duration_usec |
var max_duration_usec: int = DEFAULT_MAX_DURATION_USEC: |
| 属性 | metadata |
var metadata: Dictionary: |
| 方法 | configure |
func configure( p_provider_id: StringName, options: Dictionary = {} ) -> GFDiagnosticSnapshotProvider: |
| 方法 | validate_provider |
func validate_provider() -> Dictionary: |
| 方法 | collect_snapshot |
func collect_snapshot(request: Dictionary = {}) -> GFDiagnosticProviderResult: |
| 方法 | _collect_snapshot |
func _collect_snapshot(_request: Dictionary = {}) -> GFDiagnosticProviderResult: |
常量¶
DEFAULT_MAX_DURATION_USEC¶
- API:
public - 首次版本:
unreleased
默认 Provider 返回后验收时长预算,单位微秒。 同步 GDScript 无法被安全抢占;该预算用于拒绝和诊断已经返回的慢采集结果, 不能替代 Provider 自身的有界实现。
属性¶
provider_id¶
- API:
public - 首次版本:
unreleased
Provider 稳定 ID。
max_duration_usec¶
- API:
public - 首次版本:
unreleased
Provider 返回后的最大验收时长,单位微秒;0 表示不做时长拒绝。
metadata¶
- API:
public - 首次版本:
unreleased
Provider 目录元数据。注册后不可修改,读取时返回副本,输出前由聚合器执行预算和脱敏。
结构:
metadata: Dictionary with provider-defined catalog metadata.
方法¶
configure¶
- API:
public - 首次版本:
unreleased
func configure( p_provider_id: StringName, options: Dictionary = {} ) -> GFDiagnosticSnapshotProvider:
配置 Provider 定义并返回自身。
参数:
| 名称 | 说明 |
|---|---|
p_provider_id |
稳定 Provider ID。 |
options |
可选目录元数据。 |
返回:当前 Provider。
结构:
options: Dictionary with optional max_duration_usec: int and metadata: Dictionary.
validate_provider¶
- API:
public - 首次版本:
unreleased
校验 Provider 定义。
返回:GFValidationReportDictionary 兼容报告。
结构:
return: Dictionary with ok, issues, counts, summary, and next_actions.
collect_snapshot¶
- API:
public - 首次版本:
unreleased
采集一次诊断结果。
参数:
| 名称 | 说明 |
|---|---|
request |
调用方提供的临时只读上下文。 |
返回:类型化 Provider 结果;实现返回 null 时由聚合器按无效结果处理。
结构:
request: Dictionary with caller-defined ephemeral fields.
_collect_snapshot¶
- API:
protected - 首次版本:
unreleased
实现一次同步、只读且有界的诊断采集。
参数:
| 名称 | 说明 |
|---|---|
_request |
调用方提供的临时上下文副本。 |
返回:类型化采集结果。
结构:
_request: Dictionary with caller-defined ephemeral fields.