Skip to content

@codesoul-co/hypha-core / telemetry

模块用法

用于使用该功能边界的公共契约与操作。Telemetry 模块公开 1 类、2 接口、1 类型。

从包入口导入

ts
import {
  InMemoryTelemetryRecorder,
} from '@codesoul-co/hypha-core';

import type {
  TelemetryMetric,
  TelemetryRecorder,
  TelemetryMetricKind,
} from '@codesoul-co/hypha-core';

使用要点

  • 3 个类型/接口用于应用代码、Adapter 或测试中的静态契约;请使用 import type,运行时不应依赖它们。
  • 1 个类提供可实例化的运行时实现;构造参数与公开方法在各自条目中完整列出。

公共导出

Symbol种类签名说明
InMemoryTelemetryRecordernew InMemoryTelemetryRecorder(): InMemoryTelemetryRecorderIn Memory Telemetry Recorder 类,共公开 4 个构造函数或成员;精确签名见本条目的声明与成员表。
TelemetryMetric接口interface TelemetryMetricTelemetry Metric 接口,共包含 5 个公开字段或方法。
TelemetryRecorder接口interface TelemetryRecorderTelemetry Recorder 接口,共包含 1 个公开字段或方法。
TelemetryMetricKind类型type TelemetryMetricKind = 'counter' | 'histogram' | 'gauge'Telemetry Metric Kind 公共类型别名;完整类型表达式见声明。

InMemoryTelemetryRecorder

In Memory Telemetry Recorder 类,共公开 4 个构造函数或成员;精确签名见本条目的声明与成员表。

  • 种类: 类
  • 导入: import { InMemoryTelemetryRecorder } from '@codesoul-co/hypha-core';
  • 源码模块: telemetry

声明

text
export declare class InMemoryTelemetryRecorder implements TelemetryRecorder {
    recordMetric(metric: TelemetryMetric): void;
    list(name?: string): TelemetryMetric[];
    sum(name: string): number;
}

公开成员

成员种类签名说明
constructor构造函数(): InMemoryTelemetryRecorder创建该类的实例。
list方法list(name?: string): TelemetryMetric[]公开方法;参数与返回类型以签名列为准。
recordMetric方法recordMetric(metric: TelemetryMetric): void公开方法;参数与返回类型以签名列为准。
sum方法sum(name: string): number公开方法;参数与返回类型以签名列为准。

TelemetryMetric

Telemetry Metric 接口,共包含 5 个公开字段或方法。

  • 种类: 接口
  • 导入: import type { TelemetryMetric } from '@codesoul-co/hypha-core';
  • 源码模块: telemetry

声明

text
export interface TelemetryMetric {
    name: string;
    kind: TelemetryMetricKind;
    value: number;
    recordedAt: string;
    attributes?: Record<string, string | number | boolean>;
}

契约成员

成员种类签名说明
attributes属性attributes?: Record<string, string | number | boolean>公开属性;类型、只读和可选状态以签名列为准。
kind属性kind: TelemetryMetricKind公开属性;类型、只读和可选状态以签名列为准。
name属性name: string公开属性;类型、只读和可选状态以签名列为准。
recordedAt属性recordedAt: string公开属性;类型、只读和可选状态以签名列为准。
value属性value: number公开属性;类型、只读和可选状态以签名列为准。

TelemetryRecorder

Telemetry Recorder 接口,共包含 1 个公开字段或方法。

  • 种类: 接口
  • 导入: import type { TelemetryRecorder } from '@codesoul-co/hypha-core';
  • 源码模块: telemetry

声明

text
export interface TelemetryRecorder {
    recordMetric(metric: TelemetryMetric): Promise<void> | void;
}

契约成员

成员种类签名说明
recordMetric方法recordMetric(metric: TelemetryMetric): Promise<void> | void公开方法;参数与返回类型以签名列为准。

TelemetryMetricKind

Telemetry Metric Kind 公共类型别名;完整类型表达式见声明。

  • 种类: 类型
  • 导入: import type { TelemetryMetricKind } from '@codesoul-co/hypha-core';
  • 源码模块: telemetry

声明

text
export type TelemetryMetricKind = 'counter' | 'histogram' | 'gauge';