@ auditaur/ api (英语)
前端遥测辅助器,用于Auditaur启用的Tauriapps.
在 Tauri 网页视图中使用这个软件包来捕捉前端控制台日志,出错,包裹 Tauri IPC 的电话, Tauri 事件,以及可选的 OpenTeleometry JS 跨度. 遥测被发送到 tauri-plugin-auditaur 后端插件,该插件将它存储在 Auditaur 本地 SQLite 会话数据库中.
安装
npm install @auditaur/api
快开始
import { initAuditaur } from '@auditaur/api';
const auditaur = await initAuditaur({
serviceName: 'my-tauri-app',
onExportError(failure) {
console.warn('Auditaur export failed', failure.error);
},
});
export const invoke = auditaur.invoke;
默认情况下, Auditaur 仪器控制台日志, 前端错误, Tauri 引用, Tauri 事件, 以及 W3C 微量上下文传播用于包裹引用 。 全部有效载荷捕获默认被禁用.
除错驱动桥
对于本地/调试UI自动化,应用程序可以明确选择进入Auditaur in-app驱动桥. 桥让 auditaur drive 从每个平台的 WebView 内部执行 Tauri 本地选择器操作 :
await initAuditaur({
serviceName: 'my-tauri-app',
driveBridge: {
windowLabel: 'main',
pollIntervalMs: 100,
},
});
该桥默认已禁用, 需要允许的 Auditaur Tauri 插件命令 auditaur:default,并且只有在开发/试验建设中才能进行。 它支持 wait, (中文(简体) ), exists, (中文(简体) ), text, (中文(简体) ), click, (中文(简体) ), fill, (中文(简体) ), type, (中文(简体) ), press, (中文(简体) ), hover, (中文(简体) ), select, (中文(简体) ), check, (中文(简体) ), uncheck, (中文(简体) ), evaluate, (中文(简体) ), snapshot,以及 screenshot;动作遥测会被记录,而不记录已填充,打入,或选定的文本值. Bridge 截图首先尝试本地的 WebView 抓取没有封禁的 WebView 像素 ; 选择者截图可以截取 WebView 图像并包含 screenshotScope=selector 加号 selectorRect。如果 WebView 抓取失败,当 OS 权限或窗口匹配防止抓取时, Auditaur 返回到本地窗口抓取,然后返回到 DOM 文本摘要 PNG . evaluate 在WebView中运行任意的JavaScript,因此将桥限制在开发/测试会话. 该桥目前是有意的单一窗口: 允许在每届审计会话中精确使用一次WebView, 通常使用 windowLabel: 'main'。如果多个窗口在同一会话中允许它,则目标选择是不支持的,可能模糊不清.
自定义引用包装符
如果您创建了自己的 Tauri 引用包, 请使用导出的微量上下文帮助符, 这样后端命令附加注释 #[tauri_plugin_auditaur::instrument_ipc] 能够继续前端跟踪 :
import { AUDITAUR_TRACE_CONTEXT_ARG, createAuditaurTraceContext } from '@auditaur/api';
const args = {
id: 'user-1',
[AUDITAUR_TRACE_CONTEXT_ARG]: createAuditaurTraceContext(),
};
OpenTeleometry JS 跨度
将审计师的出口商添加到现有的 OpenTelemetery JS Tracker 供应商中:
import { BasicTracerProvider, SimpleSpanProcessor } from '@opentelemetry/sdk-trace-base';
import { initAuditaur } from '@auditaur/api';
const auditaur = await initAuditaur({ serviceName: 'my-tauri-app' });
const provider = new BasicTracerProvider({
spanProcessors: [
new SimpleSpanProcessor(auditaur.createOpenTelemetrySpanExporter()),
],
});
使用 Rust Tauri 插件和 CLI 的完整设置请参见 Auditaur 文件 .