miniprogram-logger
Version:
It is used to log and gather statistics of users' behavior.
46 lines • 1.62 kB
TypeScript
import { ITelemetry, UserInfo } from "./ITelemetry";
import { Reporter, Dictionary } from "../common/reporter";
export interface TelemetryObject extends Dictionary {
/** 记录ID */
id?: string;
/** 记录操作 */
action?: string;
/** 参数 */
param?: any;
/** 扩展内容 */
extension?: TelemetryExtension;
/** 客户端数据 */
user?: UserInfo;
}
/**
* 默认 Telemetry对象转换函数
* 字段中注入`id`和`extension.timestamp`
* @param data LogObject
*/
export declare function TelemetryTransformFunction<T extends TelemetryObject = TelemetryObject>(data: T): Dictionary;
declare type TelemetryKeys = ['action', 'param', 'extension', 'user'];
declare type TelemetryValues = [string, any, Dictionary, UserInfo];
export declare class ReportAnalytics extends Reporter<TelemetryObject, TelemetryValues, TelemetryKeys> implements ITelemetry {
constructor(tableName: string, context?: Partial<TelemetryObject>);
/**
* 快速记录性能日志
* @param action 操作,
* @param context 其它数据
*/
record(action: TelemetryValues[0], parameter?: TelemetryValues[1], extension?: TelemetryValues[2], userInfo?: TelemetryValues[3]): void;
/**
* 快速记录性能日志
* @param data PerformanceParam
*/
record(data: TelemetryObject): void;
}
interface TelemetryExtension extends Dictionary {
/** 关联ID */
debug_correlation_id?: string;
/** 处理时间 */
process_time?: number;
/** 时间戳 */
timestamp?: string | number;
}
export {};
//# sourceMappingURL=report-analytics.d.ts.map