2026-08-29 的真实 Grafana 目录:六张盘把性能、流畅度、功耗、取证、后台资源和使用时间组成可回放产品。
查看画廊与说明用途与结果
最快了解这个项目
为什么需要它
任务管理器只能看此刻,卡顿、过热、异常写盘和闪退等现场很快消失;剪贴板内容也会被下一次复制覆盖。TimeAudit 让偶发故障可以事后按时间对齐,让曾复制的资料可以按关键词、日期和类型找回,同时明确区分观察事实、估算、空档和未知。
举个实际例子
我可以问:“昨晚游戏突然卡了两秒,到底是显卡、磁盘,还是后台程序在抢资源?”TimeAudit 会先告诉我那段时间有没有足够记录;有的话就把帧率、温度、磁盘和前后台变化对到同一时刻,给出最值得继续查的方向,没有证据的地方直接留空,不靠重启电脑碰运气。
最后我会得到什么
得到与故障时间对应的记录、覆盖缺口和值得继续检查的方向,或者按关键词找回的复制内容。健康检查回答现在还在不在记录,备份和隔离恢复另答能否取回数据;三者不能用同一个绿灯代替。
正常时
电脑活动时间线可显示有来源的硬件与程序记录,完整时段摘要会分开列出记录覆盖与空档;剪贴板历史另在本机把同内容分组、显示复制次数并允许再次复制。每条能力各自说明最近记录到什么时候。
发现问题时
采集出现空档、读数异常或某次复制被跳过时,指出受影响的时间和能力;异常本身不等于硬件坏了或某个程序有恶意。
入口不可用或证据不足时
某个传感器、保存位置或查看窗口不可用时,只把相应结果标成无法判断,不补造读数,也不拿私人复制内容做公开报告。
从哪里开始
在TimeAudit数据大盘(Grafana)查看电脑历史与性能;本站首页可先看Grafana状态并进入大盘。需要AI解释一段异常时,说明症状和时间。复制记录在本机“密码中心”的“剪贴板历史”页查看。
需要准备什么
- 想看的时间范围与异常现象
- 是硬件、进程、使用时长还是剪贴板记录
- 需要只读分析还是维护恢复
从开始到拿到结果
- 1先核对这段记录有没有空白
系统看指定时间内采集是否持续、电脑是否睡眠,以及哪段数据缺失;有缺口先标出来。
- 2核对记录是否完整
查看采集覆盖、最后写入时间和数据缺口,再打开相应大盘或精确本机记录。
- 3对齐来源找解释
把硬件、前台、进程、帧率和睡眠等证据放到同一时间线上,估算与探针失败明确标注。
- 4拿到可复查结论
交回图表、候选原因和未知项;采集停摆先按单组件恢复,不把空值或进程存在当作正常。
从这些需求了解功能
从一个实际问题看它怎样处理、交回什么;当前能做到哪一步和仍有哪些限制,也写在对应说明中。
可视化证据
TimeAudit 的图片与证据等级
单击图片查看完整大图;每张图同时说明它能证明和不能证明什么。打开后可缩放、滚动查看细节,也可关闭或切换上一张、下一张。
项目指标与相关入口查看规模、覆盖范围和关联能力
当前项目指标
- 9月14日一小时硬件样本
- 3599
- 9月14日有效/拒绝正帧
- 2369 / 1229
- 9月14日活动覆盖
- 3383 / 3600 秒
- 大盘
- 6 · 78
它负责
- 持续记录电脑硬件、游戏帧、正在运行的程序、前台使用和程序启停。
- 把连续读数和有起止时间的活动分别保存,让过去的故障可按时间回看。
- 在浏览器数据大盘里按实际问题展示变化,而不要求用户先看一长串原始数字。
- 指出哪些读数来自传感器,哪些是估算、空白或仍不知道。
- 在本机单独保存新复制的文字、网址和普通文件路径,支持搜索与再次复制。
- 让已获准的其他工具从上次读到的位置继续取新记录,原始复制内容仍留在本机。
- 检查是否持续写入,并通过已有恢复任务和备份留住历史。
- 按点名时间先给简明异常摘要,确需深查再打开详细记录。
它不负责
- 不会因一条异常记录自动结束程序、封网或修改电脑。
- 不是多台公司电脑的集中监控、远程控制或云端告警服务。
- 网络流量分摊和电脑响应抖动只是线索,不能直接判定某个程序或驱动就是根因。
- 没有游戏帧可能只是没开游戏,不自动算成采集故障。
- 不记录图片和任意二进制剪贴板内容,也不把复制当成阅读、同意或执行。
- 复制内容只在本机查看,不送到网页、性能大盘或公开记录。
- 不会把整份原始历史都交给一次诊断;先取与问题时间有关的证据。
产品思想与设计核心
先问什么时候发生
时间窗口是诊断入口;先定位问题时刻,再决定需要哪些硬件、进程、前台和生命周期证据。
多种信号必须对齐解释
单个温度、帧率或磁盘尖峰不能直接给根因,只有同一时间轴上的关系才形成候选解释。
空白也有不同原因
没有游戏帧、没有采到和采集器故障是三种状态,不能都显示成零或正常。
实测、估算、推导和未知分开
能耗、电费、签名风险和因果判断都有边界,界面必须说明每个值来自哪里、能证明什么。
先看有界摘要,再决定是否深挖
快速查询先确认覆盖和方向,只有真正需要时才进入详细大盘,不让每次诊断都临时拼查询。
只记录和解释,不自动处置
异常摘要不自动处置其他应用或修改系统配置;采集器自身仍由既有看门狗按精确身份恢复。相关性、异常路径和无签名都不能直接升级成安全结论。
复制过不等于看过或同意
本机剪贴板历史只说明电脑观察到一次复制,不能据此推断本人阅读、执行或打算使用它。
私密复制内容只在本机打开
搜索、预览和再次复制都在本机查看器完成。公开页面只说明功能状态,不显示复制原文、敏感窗口或凭据。
两条记录线可以分别成功或失败
性能时间线和剪贴板历史各有自己的保存与查看入口;一条暂时坏了,不因此把另一条也报成不可用。
程序在跑也要看数据有没有更新
最近写入时间只能说明记录在继续;若显卡温度等读数明显越界,先换真实可用来源核对,没有可靠值就留空。
备份成功不等于恢复完成
数据库、面板和任务都要在隔离环境恢复并回读结果,不能用备份任务退出码冒充可恢复。
读不到就留空,不补一个看似正常的零
缺传感器、保存失败或采集延迟都要标明。要判断昨晚发生了什么,还须检查当时的记录覆盖,不能只看现在程序在不在。
项目怎样演化到现在
现场消失后,也能回看
把硬件、程序和使用时间保存为可回放记录,卡顿、发热和磁盘问题能够按同一时刻对照;空档、时钟和采样口径逐步单独说明。
阶段依据
- 2026-06-08 · Windows遥测、数据库和仪表盘形成。
e4c49fd–bf69c85 - 2026-06-13—06-14 · 硬件口径、睡眠/时钟/分区边界与每日备份。
a303f54–faadf31
不仅持续记录,也要知道记录可靠吗
隐藏启动、采集恢复与帧率归属逐步收敛,避免进程活着却没有入库、空闲被当故障或不同恢复器争抢;传感器缺失与错误值继续保持缺口。
阶段依据
- 2026-07-03—07-27 · 启动、看门狗、入库和备份恢复。
1a0c3a5–6e4c7bd - 2026-07-29—08-07 · FPS绑定前台渲染进程,并提供不含正文的异常聚合。
e677ad6–5f41846 - 2026-08-21 · 写入缓冲、大盘数据源及恢复边界。
2ec7807–de82db7 - 2026-08-23—08-24 · 遥测恢复串行,空闲不误报为故障。
2d77616–59ecd01 - 2026-08-30—08-31 · 新鲜度、采样隔离与单一恢复责任,历史性能数值不冒充当前观察。
44a842e–001cee0
复制历史形成独立的本机找回能力
新复制的文字、网址和普通文件路径可以按关键词或日期找回并再次复制;它有自己的保存、搜索、增量读取和备份,不依赖性能数据库,也不把复制解释成阅读或执行。
阶段依据
- 2026-07-25—08-16 · 独立剪贴板历史、桌面查看、增量出口与近线备份形成完整产品轴。
00d6e29–5d25379
一个普通问题能拿到有边界的诊断
按指定时间先汇总覆盖和关键线索,需要时再进详细大盘;不用每次翻全库,也不拿一次相关信号直接定根因。
阶段依据
- 2026-08-29 · 有界历史诊断和自然请求快路径,仪表盘不再绑定某个硬件型号。
238ea58–a5a34d6
备份和运行健康都有可核对结果
同一健康入口核对真实写入和缺口,数据备份可在隔离环境试恢复;没有值、执行失败与恢复未验仍分别说明。
阶段依据
- 2026-09-17 · 备份和运行健康都有可核对结果
cbd34b7
按完整时段看活动,按内容找复制记录
只读活动入口能把完整时段和北京时间每天的来源覆盖与空档交给本人;剪贴板同内容分组并显示真正复制次数。两者都不把设备记录解释成本人在场或已同意。
阶段依据
- 2026-09-23 · 完整时段摘要与权限边界
76dc57d–c317376 - 2026-09-23 · 同内容分组、复制次数和类型筛选
622b66c
完整项目状态与证据边界
已确认事实
- 2026-09-08修复后三分钟历史窗口的133个正帧全部被拒绝,no_game_frames结论保留。2026-09-14一小时摘要另有3598正帧,其中2369有效、1229拒绝,quality=mixed_valid_and_rejected;有效子集FPS均值222.631、最低172.8,1% Low均值111.272、帧时p95为7.356ms。有效性只证明数值范围及FPS与帧时一致;提供器未给拒绝原因分项或帧源身份,不能推断拒绝来自哪种故障,也不能把这些帧自动称为真实游戏验收。
- 硬件 / FPS / 前台心跳 1 秒,活跃进程 3 秒;约 2 GB/周、330 GB/三年、1200 天保留;数据库与 Grafana 每类备份轮转上限 14 份
- 当前源码优先读取 RTSS(RivaTuner Statistics Server 帧率工具)的共享内存;按前台进程、RTSS 最近前台、已启用的 Wallpaper 桌面渲染器和唯一新鲜帧源选择。映射可用但无有效帧为正常 gated_idle;映射不可用才启用 PresentMon 后备,不能把所有零值都当正常等待。
- PostgreSQL 15(本机45432)+ Grafana 13.0.2(本机43000);原公网Grafana地址保持,6 张仪表盘、78 个面板。
- 2026-09-18T13:14Z共享健康正常:AHK约0.87秒、硬件数据库约0.38秒新鲜,待写、写失败和溢出均0,已有contract-2质量来源。数据库备份14份,最近约9.22小时/4162.12MiB,清单/长度通过、full_restore_verified=false;本轮未重哈希或恢复数据库。9月14日3599样本/3383秒活动覆盖仍是历史窗口,不能拿当前心跳覆盖它的217秒缺口。
- 2026-09-08T08:34:28Z仅停止已核对身份的旧采集worker,由既有TimeAudit_Watchdog拉起新launcher 57708→worker 61904(08:34:50Z)。首个新样本08:35:19Z,启动窗口前沿有51.03秒缺口。随后三分钟GPU占用/温度/功率/核心和显存时钟180/180非空且物理有效;不新增服务、不改历史样本,也未重启电脑或GPU驱动。
- PUBLIC(公开) main 9510b97730b7de3219d94788ce9aedba2539b889 已正常推送。既有AutoStart恢复缺失依赖,正在启动时不重复触发;AHK精确实例与健康容器保留,配置变更只在明确部署时应用。原18项Python与8项PowerShell恢复分支测试通过;本轮剪贴板完整19项回归通过,代码、运行中会话与恢复分别说明。
- personal_activity_reader.py --summary 可按明确时间窗给完整时段与北京时间逐日概览,分别说明前台和 AHK 记录覆盖、未覆盖、状态及应用排名。开放会话不外推,记录不是本人在场或工作成果;本轮只核源码与测试,未读取生产活动窗口,也未证明 timeaudit-diagnostics Skill 已自动调用新入口。
- 按来源实例、开机、会话和序列排除同一次复制的重复观察,真正再次复制才增加次数。可识别的文件名、版本和模型标识优先归文本,包括PowerShell脚本与模型量化命名;已知密钥前缀、JWT、恢复密钥及混合密码仍按相应规则识别。日期、类别筛选先于分组和分页;疑似密钥是格式线索,不保证检出。原事件和正文保持,已打开的密码中心需要重新打开以加载新分类器。
- 2026-09-24T16:52:36Z完整TimeAudit健康为healthy,Grafana、数据库、遥测、入库、活动持久化及watchdog均正常;963条积压批次由原入库器处理,pending_files=0。公网Grafana健康接口随后返回200/database=ok;没有重置Docker、删除数据库或重算缺失历史。
- WM_CLIPBOARDUPDATE事件采集与SQLite schema(数据结构) v1/WAL/FTS5独立工作。8月31日为5234事件、2312个blob(正文对象)、3406条全文索引,3个任务与无正文adapter(适配出口)验证通过、专属11项测试通过;本次未重读当前正文或计数。
- Git Owner(Git 事实责任方) 在 2026-08-31T21:38:05Z live(实时)回读确认 wlyaaaaa/TimeAudit 为 PUBLIC(公开),当时 main(默认主分支)=本地 HEAD=origin/main=001cee0918f3fc1adbd5eed5145c7ee353038291,ahead/behind(本地领先/落后)均为 0,工作树 clean(干净)。这是下列发布、测试与现场证据的固定版本,不用它冒充后续源码的发布证明。
- e5459ce保留RTSSSharedMemoryV2只读首选、2秒新鲜度、双读一致性和fps_capture_status/detail入库;只有映射不可用才考虑PresentMon。新增NVML成功返回但核心指标非有限或越界时,按既有失败路径清句柄并重新初始化,当前拍只接受真实LHM回退或NULL,不把坏值裁成0。README已改为四worker、新实例退让,以及映射不可用才后备。
- 44a842e..001cee0 的 6 文件变更已成为正式 source(源码):LibreHardwareMonitor 的运行 owner 收敛到独立 `LibreHardwareMonitor` 计划任务,`telemetry_watchdog.ps1` 是登记的自动恢复路径,hardware_worker.py 对运行中的 LHM 只读本机 18085,端点不可用时留空而不自行拉起、结束或替换 LHM;缺少二进制时的 prepare(文件准备)线程仍只负责取得组件文件。
- 当次 hardware_worker.py blob 为 9cfc397,与 001cee0 完全一致;文件在 16:56:22Z 落盘,项目 `.venv` 的 main.py 逻辑进程在 17:10:05Z 启动,证明当时主引擎在该 worker 字节落盘后加载,不证明已采用后来的 c3ca677 帧链。Windows 中可见的 `.venv` launcher(启动器)与其 Python 3.11 子进程是一个父子运行链,不是两个独立 collector。
- `LibreHardwareMonitor` 任务为 Interactive Highest(交互式最高权限)、IgnoreNew(忽略重复实例)且 action(动作)精确指向项目 exe;观察时 1 个 46-thread(线程)实例运行并由 18085 返回 HTTP 200,另有 3 个零线程 stopped(已停止)的 crash ghost(崩溃残影),新健康检查不会把残影冒充在线。`TimeAudit_Watchdog` 每分钟 + 登录触发、IgnoreNew、3 次/1 分钟任务级重试、3 分钟上限,最近一轮结果为 0;任务清单中只有这两个入口引用 LHM / telemetry_watchdog。
- audit-postgres、audit-ingester、audit-grafana 三个容器运行,入库器为 healthy(健康),PostgreSQL 暴露本机 45432,Grafana 13.0.2 暴露本机 53000;只读现场健康脚本 21/21 通过,近 2 分钟 120/120 条硬件样本均有 LHM GPU 电压与 CPU Vcore,最新写入年龄 0.8 秒。
- 001cee0完整回归为182 passed(通过)、11 subtests passed(子测试通过)、49.01秒;另有LHM/Watchdog的10/10定向断言。9月8日e5459ce只重跑与NVML、FPS选择/状态和诊断摘要有关的39项;没有重跑旧182项,也没有安装或改写生产依赖。
- 8月31日剪贴板sidecar(侧车文件)的PCConfig有界验证为 passed(通过):TimeAudit_ClipboardCollector 为 Running,TimeAudit_ClipboardWatchdog 与 TimeAudit_ClipboardNearlineBackup 为 Ready,三任务均为普通用户 Limited(受限)运行级别;无正文 heartbeat 年龄 2824 ms、数据库 integrity=ok、schema_version=1,计数为 5234 个事件 / 2312 个正文对象 / 3406 条 FTS 索引,adapter(适配出口)返回 v1 且 payload(正文载荷)缺省。专属 11 项合成回归另在 0.806 秒内通过。
- `timeaudit_diagnostic_summary.py --hours 1` 在 2026-08-31T21:45:19Z 返回 schema(数据结构)=timeaudit.diagnostic-summary.v1、owner=timeaudit:diagnostic-history、status=ok、coverage=fresh、3660 个硬件样本,最新样本年龄 0.129 秒、最大 gap 1.086 秒;活动记录覆盖 3478/3600 秒,未覆盖 122 秒。CPU 均值/峰值 65.4/71.4°C、GPU hotspot 最高 64°C、磁盘 p95 0.235 ms,没有有效游戏帧被正确标为 no_game_frames。packet-loss 信号 17 次、活动状态重叠 36 秒都只进入复核边界。
- 当前源码的 RTSS 分支以系统 tick(启动计时)判断帧年龄并复核共享内存一致性;PresentMon 后备仍用单调时钟判断新鲜度,避免墙钟回拨让旧帧存活。`psutil.net_connections()` 进入可重启隔离进程,并避开 Windows `cpu_stats()` 原生崩溃路径。
- 生产 Python 依赖已经收敛到项目 `.venv`;启动器与 Watchdog 不依赖全局 Python 包。
- 保留与备份审计按约 2 GB/周、330 GB/三年和 1200 天保留估算;数据库与 Grafana 每类备份轮转上限为 14 份。这是容量与轮转合同,不证明任一备份已完成隔离整库恢复。
- 历史源码修复已消除172个正常系统进程误报,修正一小时窗中的 138 对重叠以避免 1 小时被算成 1.5 小时,并把占采集耗时 86% 的父进程解析替换为同一快照映射。
- 两个聚合回执为了快速、有界而不返回逐行历史、进程或窗口明细;这是 provider(提供器)的接口范围,不代表这些字段类别禁止公开。阈值信号也只表示相关与出现次数,不证明硬件故障、恶意程序或用户意图。
当前缺口
- 分类筛选仍按内容组计算,较大历史库的耗时会随组数增加;本轮没有修改数据库或引入分类缓存。
- 2026-09-24约12:53–16:46 UTC未采集的硬件遥测没有回填。旧53000落入Windows排除范围52954–53053,现改43000;已有但失效的Docker后端仍只报告不可用,不自动重启共享引擎。
- 网页使用官方有界摘要;源修复只额外核对精确采集进程与GPU有效计数。没有读取窗口、聊天或剪贴板正文,不能据此解释某段私人活动或具体程序根因。
- 001cee0 的 182 项完整源码回归与 21 项现场健康检查已通过,但没有执行 db_audit.py 的整库数据审计,也没有对全部 Grafana SQL 做当前数据库执行计划验收;在线状态与测试都不能证明历史数据全绿。
- 2026-09-08曾通过既有Watchdog真实换代TimeAudit采集器,保留约51.03秒启动前沿空档;LHM进程崩溃或18085端点故障的恢复没有重新注入,不能把采集器换代当作所有依赖故障都已验收。
- 8 月 31 日的一小时诊断窗口没有有效游戏帧,因此没有 FPS、1% Low 与 frametime 结论。no_game_frames 只说明该摘要没有可分析帧;判断正常空闲还必须同时看新鲜度和明确的 gated_idle,不能掩盖 waiting_frames、error 或来源不可用。
- 当前摘要仍有1229个正帧被拒绝;提供器没有帧源身份和拒绝原因分项,不能把有效子集升级为真实游戏或确定故障结论。
- 本次没有打开 Grafana 做 index→Overview→代表模块的用户可见路径验收;容器运行、聚合查询和历史截图不能替代当前浏览器 E2E(端到端验证)。
- diagnostic summary v1 最长查询 168 小时且仅聚合;需要更长趋势或逐进程/路径/窗口明细时,应建立有明确价值并按实际值判断敏感性的另一条路线,不能把缺失字段猜出来。
- 已证旧长寿命进程内NVML返回失真,最初触发原因仍未知。新进程使用当前库与显式旧DLL均正常,旧DLL版本不是已证根因;三分钟新样本正常不证明永不复发,历史坏值没有自动删除或重算。
- 剪贴板专属 11 项单元测试与 PCConfig 无正文运行验证通过,但本次没有执行会写入合成剪贴板内容的真机 smoke test(回环测试),也没有从 G 盘近线副本恢复到空目录;任务结果 0 与备份根存在都不能证明最新副本已完成端到端恢复。
- 8月31日历史备份任务结果为0、定向恢复测试通过;本轮未重查任务或从最新dump和Grafana备份做隔离整套恢复。
来源与公开边界
这是吴乐阳个人维护并集成第三方探针/库的 PUBLIC(公开)GitHub 仓库;根目录没有统一 LICENSE,不能仅因公开就称为开源,也不能把 LibreHardwareMonitor、RTSS、PresentMon、Grafana 等外部组件冒充个人原创。进程名、路径、命令行、窗口标题、时间、遥测、机器与网络指标不因字段类型自动保密;本页可在有用时公开这些技术事实。只有实际包含个人敏感正文或密码、令牌、密钥、恢复码等凭据的具体值才隐藏。原始全库不镜像进网页,是因为体积、噪声和解释边界。
当前关键技术事实
- 当前帧有效性与历史窗口
- 2026-09-08修复后三分钟历史窗口的133个正帧全部被拒绝,no_game_frames结论保留。2026-09-14一小时摘要另有3598正帧,其中2369有效、1229拒绝,quality=mixed_valid_and_rejected;有效子集FPS均值222.631、最低172.8,1% Low均值111.272、帧时p95为7.356ms。有效性只证明数值范围及FPS与帧时一致;提供器未给拒绝原因分项或帧源身份,不能推断拒绝来自哪种故障,也不能把这些帧自动称为真实游戏验收。
- 采样与保留
- 硬件 / FPS / 前台心跳 1 秒,活跃进程 3 秒;约 2 GB/周、330 GB/三年、1200 天保留;数据库与 Grafana 每类备份轮转上限 14 份
- 帧率来源与空闲
- 当前源码优先读取 RTSS(RivaTuner Statistics Server 帧率工具)的共享内存;按前台进程、RTSS 最近前台、已启用的 Wallpaper 桌面渲染器和唯一新鲜帧源选择。映射可用但无有效帧为正常 gated_idle;映射不可用才启用 PresentMon 后备,不能把所有零值都当正常等待。
- 存储与展示
- PostgreSQL 15(本机45432)+ Grafana 13.0.2(本机43000);原公网Grafana地址保持,6 张仪表盘、78 个面板。
- 当前共享健康与历史聚合
- 2026-09-18T13:14Z共享健康正常:AHK约0.87秒、硬件数据库约0.38秒新鲜,待写、写失败和溢出均0,已有contract-2质量来源。数据库备份14份,最近约9.22小时/4162.12MiB,清单/长度通过、full_restore_verified=false;本轮未重哈希或恢复数据库。9月14日3599样本/3383秒活动覆盖仍是历史窗口,不能拿当前心跳覆盖它的217秒缺口。
- 9月8日受管换代与空档
- 2026-09-08T08:34:28Z仅停止已核对身份的旧采集worker,由既有TimeAudit_Watchdog拉起新launcher 57708→worker 61904(08:34:50Z)。首个新样本08:35:19Z,启动窗口前沿有51.03秒缺口。随后三分钟GPU占用/温度/功率/核心和显存时钟180/180非空且物理有效;不新增服务、不改历史样本,也未重启电脑或GPU驱动。
- 当前正式实现与部署边界
- PUBLIC(公开) main 9510b97730b7de3219d94788ce9aedba2539b889 已正常推送。既有AutoStart恢复缺失依赖,正在启动时不重复触发;AHK精确实例与健康容器保留,配置变更只在明确部署时应用。原18项Python与8项PowerShell恢复分支测试通过;本轮剪贴板完整19项回归通过,代码、运行中会话与恢复分别说明。
- 独立剪贴板历史 · 8月31日证据
- WM_CLIPBOARDUPDATE事件采集与SQLite schema(数据结构) v1/WAL/FTS5独立工作。8月31日为5234事件、2312个blob(正文对象)、3406条全文索引,3个任务与无正文adapter(适配出口)验证通过、专属11项测试通过;本次未重读当前正文或计数。
完整执行流程
- 1分开两条前台记录
AHK 记录简版使用区间并经 spool 入库;Python 主引擎写硬件、进程、上下文和生命周期事实。
- 2按快慢节拍采集
每 1 秒推进硬件、FPS 与前台心跳;全进程扫描约每 3 秒单飞,过慢时跳过而不积压。
- 3保留来源差异
NVML、PDH、LibreHardwareMonitor 与 Win32 各守边界;帧率先读 RTSS,只在其映射不可用时启用 PresentMon 后备。新鲜的明确空闲可以等待,已检测渲染却收不到帧、旧数据和采集错误必须分别说明。
- 4写入分区数据库
点采样按周/月分区,前台区间另表保存;预热、时区和保留期避免长跑错位。
- 5先快查,再用问题型大盘回放
近期事件先由 timeaudit-diagnostics 用一次有界聚合确认覆盖与关键线索;需要更深细节时再框定问题时刻,跨性能、功耗、取证、资源和时间盘对齐证据。
- 6剪贴板历史走独立旁路
Windows 消息监听把新复制写入本机 SQLite;桌面查看器负责搜索和再次复制,版本化出口负责增量消费,完全不经过 PostgreSQL、Grafana 或主遥测调度。
- 7自愈、备份与恢复
心跳和 Watchdog 只恢复故障组件;数据库与大盘分层备份,并在隔离环境回读恢复结果,不用备份任务成功冒充可恢复。
本页用到的名词
需要核对专业含义时,可以在这里查看它在 TimeAudit 项目中的具体用法。
- Telemetry(遥测)
- 按固定节拍记录机器状态,供后续回放;本页只展示结构与聚合状态。
- fast / slow lane(快 / 慢车道)
- 1 秒硬件路径与约 3 秒全进程扫描分开,慢扫描不拖住快车道。
- worker(采集工作单元)
- 分别负责前台、进程资源、硬件和生命周期的独立逻辑。
- partition(数据库分区)
- 按周或月拆大表,使长期数据仍可按时间范围裁剪查询。
- FPS / 1% Low(帧率 / 最差 1% 帧率)
- 平均 FPS 看总体速度,1% Low 更能揭示偶发卡顿。
- wall / monotonic clock(墙上 / 单调时间)
- 前者识别睡眠并写事件,后者计算速率以避免对时回拨假尖刺。
- heartbeat(心跳)
- 只记最近成功推进时刻的无正文文件,用来发现进程仍在但循环卡死。
- spool(暂存段)
- AHK 记录入库前的短期文件;事务成功后才删除。
- WAL(预写日志)
- SQLite 先把变更写入日志,再合并到主库,使采集和只读查询可以安全并行。
- FTS5(全文搜索索引)
- SQLite 的全文检索表;缺失时查看器明确不可用,不退化为长期全表扫描。
- lineage(恢复来源链)
- 再次复制时把新事件连接回原事件,既保留两次真实复制,也避免把恢复动作猜成普通来源。
- fail-closed(失败关闭)
- 来源、版本或证据不一致时停止覆盖和恢复,不猜可用结果。
- diagnostic summary(诊断摘要)
- 在最长 168 小时的窗口内用一次聚合查询返回覆盖、硬件、游戏帧、电脑状态、阈值信号和解释边界。
- E2E(端到端验证)
- 真实采集、写库、查询到用户看图完整走通;源码测试不能替代。
系统里实际有什么
下面是当前产品组件,不是概念分类。每一项都对应真实文件、入口或验证链。
组织 1 秒 / 3 秒调度、连接池、单例、分区和睡眠恢复。
全进程扫描进工作线程;慢车道未完成时不排队。
分别采前台、进程资源、硬件和进程生灭。
每层拥有独立表、节拍、来源与失败语义。
记录前台使用区间、暂离、息屏、睡眠和锁屏。
唯一 spool、有限超时、幂等事件 id;事务成功后删除源段。
长期保存点采样、区间、维度和生命周期。
硬件按月,进程/上下文按周分区;本地日界和时间条件支持长期查询。
提供 6 张盘、78 个面板。
固定 datasource UID(数据源标识)和 JSON 恢复合同。
恢复 main.py、LibreHardwareMonitor、AHK 和入库器的 native(本机代码)崩溃、假活或端点停滞。
每分钟按精确身份、heartbeat(心跳)与端点健康串行检查;LHM 只通过独立任务恢复,hardware worker 不再拥有进程控制。
备份数据库、Grafana 状态和 dashboard JSON。
来源分叉或恢复标识不合格时失败关闭。
向 PCConfig 提供有界增量异常计数与是否建议重查稳定投影。
窗口最长 168 小时,只返回覆盖、阈值、计数与建议;字段省略是接口范围,不是公开禁令。
为 timeaudit-diagnostics Skill 汇总硬件、有效游戏帧、电脑状态、覆盖空档和阈值信号。
`--hours 1-168` 或精确 UTC 窗口执行一次 aggregate-only 查询;schema(数据结构)、owner、coverage 与因果限制失败关闭。
保存新发生的文本、网址与普通文件路径复制,提供本机全文搜索、再次复制、只读增量出口与独立恢复。
WM_CLIPBOARDUPDATE + SQLite WAL/FTS5;三项普通用户任务与 G 盘 nearline backup(近线备份)由 PCConfig 管理,不依赖 PostgreSQL/Grafana。
7 层证据分别证明什么
能证明:截止来源为b64fafe;必要补救e5459ce已正常推送并回读默认main。现役仍为LHM独立任务、telemetry_watchdog唯一自动恢复和hardware worker(硬件采集工作单元)只读18085;新增NVML越界拒收复用原有重初始化/后备,没有新服务。
不能证明:本机任务已指向这些文件、运行进程已经重新加载或故障恢复已经真实发生。
能证明:8月31日回读LHM任务action(动作)指向项目exe、Watchdog指向隐藏launcher(启动器);两者均为Interactive Highest、IgnoreNew,Watchdog 每分钟 + 登录触发并保留有界重试/执行上限。
不能证明:任务当前端点健康、主引擎使用新 worker,或恢复动作能成功。
能证明:8月31日001cee0完整回归182项+11子测试、LHM/Watchdog10/10、现场健康21/21、剪贴板11/11;9月8日e5459ce另通过39项相关回归,两个日期不互相替代。
不能证明:真实游戏负载、LHM 故障注入、剪贴板真机消息回环、长期全库性能或浏览器用户路径。
能证明:2026-09-08精确停止旧采集worker,既有Watchdog拉起新launcher/worker并持续入库;开始有51.03秒前沿缺口,之后三分钟180个GPU样本有效。8月31日容器/LHM/剪贴板运行与完整性记录仍按原日期保留,没有把本次GPU验收扩为全链重验。
不能证明:历史无空档、LHM 死端点可恢复、样本或剪贴板正文正确,或复制代表用户意图。
能证明:08:41:41Z独立重读(08:35:40Z,08:38:40Z]:180硬件样本、180秒活动覆盖、无异常信号;GPU均值52.306°C/10.05%/97.495W。133个正帧样本全部拒绝,no_game_frames,不给FPS结论。截止前一小时的3600个GPU越界样本仍保留。
不能证明:内核 DPC、硬件故障、具体进程原因、网络根因或持续压力。
能证明:11 张获准截图展示真实界面;固定数据源与恢复结构有回归。
不能证明:图片瞬时值可公开推广或全部 SQL 性能达标。
能证明:8月31日主链与剪贴板近线备份任务结果为0;SQLite Online Backup、清单校验与空目录恢复有原日期单元测试。本次没有重读这些备份或执行还原。
不能证明:本次已从最新 PostgreSQL/Grafana 或 G 盘剪贴板副本完成隔离端到端恢复。
维护入口
http://localhost:43000打开大盘:从时间范围进入 6 张诊断盘。
schtasks /run /tn TimeAudit_AutoStart启动主链:通过交互式提权任务拉起 AHK、Docker 与主引擎。
Get-ScheduledTaskInfo TimeAudit_Watchdog查看 Watchdog(看门狗):确认外部恢复任务最近结果,不读遥测正文载荷。
$env:PYTHONPATH='.venv\Lib\site-packages'; C:\Users\10979\AppData\Local\Programs\Python\Python311\python.exe -B -m pytest -q源码回归:让本机 pytest runner 优先使用项目 `.venv` 生产依赖,验证运行、入库、仪表盘、备份、FPS 与原生隔离;pytest 不进入生产依赖。
python E:\Projects\Tools\TimeAudit\pcconfig_anomaly_digest.py --after-utc <UTC> --until-utc <UTC>公开安全聚合:只返回异常计数、覆盖和建议。
python -B E:\Projects\Tools\TimeAudit\timeaudit_diagnostic_summary.py --hours <1-168>快速历史诊断:一次查询返回覆盖、硬件、有效游戏帧、状态时长、信号与解释限制,供 timeaudit-diagnostics Skill 使用。
python -B E:\Projects\Tools\TimeAudit\personal_activity_reader.py --after <含时区起点> --until <含时区终点> --summary完整时段个人活动摘要:经现有个人资料权限读取完整时间窗和北京时间逐日来源覆盖、空档及状态;含私人活动结果只在获准本地会话消费,不把记录等同本人在场。
开始菜单:TimeAudit 剪贴板历史打开剪贴板历史:在只读桌面查看器中搜索、筛选、预览和再次复制,不经浏览器或固定端口。
pwsh -NoProfile -File E:\PCConfig\tools\Test-TimeAuditClipboardHistory.ps1剪贴板有界验收:只读检查三任务、无正文心跳、ACL、schema(数据结构)、计数、适配出口与近线根,不输出历史正文。
powershell -File E:\Projects\Tools\TimeAudit\backup_all.ps1 ; python E:\Projects\Tools\TimeAudit\restore_grafana.py --dry-run备份 / 恢复预检:分层备份,并在实际恢复前验证候选。
timeaudit_backup.py restore-check; timeaudit_backup.py restore-status; timeaudit_backup.py finish-restore明确隔离恢复演练:明确请求下在独立临时数据库验证同一次恢复,完成回读后只清本次资源,不覆盖生产数据库。
timeaudit_health.py; E:\PCConfig\tools\Get-ComputerStutterDiagnostic.ps1 -Minutes 15 -Json共享健康与有界诊断:只读核对当前写入与历史/原生记录/事件,缺证据不当正常,不启动恢复。
快照怎样更新
本页代表最后一次明确核对并发布的项目状态,不承诺后台实时同步。再次更新时会重新读取该项目当前事实、边界和验证结果;无法确认的内容继续明确标成网页快照边界,不用旧记录猜成当前状态。
