资讯动态

Stats 完整安装指南:macOS 菜单栏系统监视器如何上手并看懂数据原理

发布时间:2026/10/14 1:49:24 来源:尧图企业网站定制
Stats 完整安装指南macOS 菜单栏系统监视器如何上手并看懂数据原理【免费下载链接】statsmacOS system monitor in your menu bar项目地址: https://gitcode.com/GitHub_Trending/st/statsStats 是一款不占桌面的 macOS 系统监视器没有独立主窗口CPU、内存、网络、电池等读数直接挂在菜单栏上点击才展开详情。本文面向想快速跑起来的普通用户和想弄清数据从哪来的进阶读者读完你能选定三种安装方式之一、处理完首启权限配置并在需要时干净卸载。从下载到卸载Stats 安装与移除全操作方式操作适合谁手动从发布页下载 Stats.dmg拖入 应用程序绝大多数用户Homebrew一条 brew 命令习惯用包管理器的人SSH 无头一条 curl 远程安装并注册为监视代理远程监控、无显示器机器brew install stats curl -fsSL https://cdn.mac-stats.com/install.sh | bash无头脚本安装脚本的流程下载 dmg → 挂载 → 装入/Applications/Stats.app→ 启用 Remote 模块 → 输出一行带授权码的 URL在任意设备打开并登录 System Stats 账号完成授权 → 令牌写入 Keychain服务名eu.exelban.Stats.remote→ 注册 launchd 登录项崩溃自动拉起。README 说明这台 Mac 必须有处于活跃状态的用户会话才能运行锁屏可以完全无人登录的机器上Stats 会等到下次登录才启动。移除时运行应用自带脚本因要移除 SMC 特权辅助程序需要管理员权限README 说明sh /Applications/Stats.app/Contents/Resources/Scripts/uninstall.sh卸载脚本 清理顺序退出 Stats →launchctl bootout卸载登录 agent 并删除其 plist →sudo卸载并删除 SMC Helper 的 LaunchDaemon 与二进制 → 删除应用本体 → 清掉 Application Support 数据、小组件容器、Group Container、defaults 偏好与 Keychain 令牌。脚本结尾提醒若风扇转速曾被手动控制过重启后会恢复自动模式。装得上卸得干净首启阶段最容易看起来坏了的几件事全出在系统权限配置上。装完首次启动这四件事最容易看起来坏了图标顺序被重排重启后图标位置变了——顺序由 macOS 决定而非 Stats首启后第一次重启可能重排README 说明。解决Mojave (10.14) 及以上按住 Command把图标拖到目标位置再松开。模块开着却看不到图标macOS 26 在系统设置 → 菜单栏新增了隐私控制应用必须被显式允许才能往顶栏挂内容。解决在该设置项中开启 Stats。Wi-Fi 名称显示 UnknownmacOS 要求定位权限才能读取 Wi-Fi 名称未授权时直接显示 Unknown 且不弹提示——系统用redacted占位Net/readers.swift 中isUsableSSID正是把空串与redacted一并过滤。解决打开 隐私与安全性 → 定位服务 的总开关与 Stats再重开 Stats。桌面小组件不刷新应用与小组件通信依赖系统进程 chronodStats 出于数据负载考虑默认关闭了这条通道README 说明。解决在 Stats 设置中打开macOS widgets源码开关是 CPU/main.swift 的systemWidgetsUpdatesState只有它为 truereader 数据才会写入SystemWidgetUpdates同步给小组件。权限就位后图标才真正开始跳动——它到底能盯住什么它能盯住什么Stats 十大模块一张表主程序启动时固定挂载 10 个模块见 AppDelegate.swift。每个模块编译为独立动态库主程序只做统一调度单模块故障不会拖垮菜单栏里的其他图标。模块监视内容默认状态CPU总利用率、每核负载、能效/性能/超核分组开GPUGPU 利用率关RAM内存用量、swap、压力等级开Disk磁盘读写利用率开Sensors温度 / 电压 / 功率关Network收发流量、速率、Wi-Fi 详情开Battery电量与健康度开Bluetooth蓝牙设备状态关Clock多时区时钟关Remote指标上报到 System Stats 账号关各模块默认开或关由它自带config.plist的State字段声明例如 CPU/config.plist 中State为 true。README 说明两条系统硬门槛macOS 12 (Monterey) 及以上只支持稳定版Beta 系统不在范围。![Stats macOS 菜单栏系统监视器背景资源图](https://raw.gitcode.com/GitHub_Trending/st/stats/raw/abf1329715dca515e2f2f5c7ce0bd85112a3a1a4/Stats/Supporting Files/background.png?utm_sourcegitcode_repo_files)模块清单说清了能看什么再往下一层每秒跳动的数字到底从哪来。每秒跳动的数字从哪来核心是 reader.swift 里的ReaderT泛型基类每个 Reader 持有独立轮询周期defaultInterval默认 1 秒由Repeater周期性驱动read()部分 reader 还能对齐到整秒边界避免模块扎堆采样。初始化时先从本地 DB 恢复上一次采样值重启后曲线不会从零开始写回 DB 被节流到约每 10 个采样周期一次。数据到达后callback()做三件事渲染界面、上报本地统计、把样本写回 DB。以 CPU 为例CPU/main.swiftloadCallback一次把同一份CPU_Load分发给 popup、portal、通知、预览、菜单栏 widget 五种消费者bar_chart 还能按每核或核集群分组着色。采集路径按架构分支#if arch(x86_64) self.limitReader LimitReader(.CPU, popup: true) { ... } #else self.frequencyReader FrequencyReader(.CPU) { ... } #endifIntel 机器读频率限制CPU_LimitApple Silicon 读实时频率CPU_Frequency。其余模块的接口内存直接走 Mach 内核接口与 sysctlhost_statistics64、vm.swapusage、kern.memorystatus_vm_pressure_level见 RAM/readers.swift网络用 SystemConfiguration 动态拿主接口过滤utun、ipsec、wg等虚拟接口SSID 依赖 CoreLocation——正是上面 Unknown 的来源传感器经特权辅助程序eu.exelban.Stats.SMC.Helper读 SMC 键值见 SMC/。另外 module.swift 的readerHasVisibleConsumer做可见性感知打开面板才需要的 reader 在没人看时会暂停避免空转。链路清楚了最后处理三个常被误解的行为与长期使用的规则。Stats 排坑手册与长期使用指南三个伪 bug想压低 CPU 占用与能耗周期性读数据不便宜每个模块都有自己的开销README 说明最省事的办法是关掉部分模块Sensors 与 Bluetooth 最费关掉它们最多可让占用与功耗下降约 50%——这是上限值实际收益取决于机器型号与启用模块数量。风扇控制是遗留功能README 说明它处于 legacy 模式不再接收更新、修复与支持留着是因为在旧款 Mac 上表现尚可。作者公开表示欢迎 PR 改进但没有精力维护。传感器数量不等于核心数CPU/GPU 传感器是芯片上的热区thermal zone与核心数、具体哪颗核心无对应关系README 说明。CPU Efficient Core 1 只是能效核集群里的一个温度传感器。每代新 SoC 都会更换 SMC 键名需要时间确认哪个值对应哪个传感器作者也在公开征集能在 Apple Silicon 上精确匹配传感器的人。issue 处理顺序README 说明先确认在用最新版大概率已修复→ 搜已有 issue被无理由关闭多半是重复提交答案在已关闭的 issue 里→ 都解决不了再新建。隐私边界Stats 不收集任何遥测与分析数据README 说明全部外部请求只去两个地址地址用途api.mac-stats.com更新检查 查询公网 IPapi.github.com更新检查失败时的后备公网 IP 特意不走第三方服务而是走作者自己的服务器更新逻辑对应 AppDelegate.swift 中的Updater优先自有服务器失败回退 GitHub。如果介意这些请求可以提 PR 让这些功能离线可用或用网络过滤工具Little Snitch 之类屏蔽这两个域名——代价是收不到更新提醒、网络模块里看不到公网 IP。参与规则代码以 MIT 协议完整开源可自由阅读、fork、构建自己的版本。但项目由单人维护审查外部代码、跨机型测试与长期维护的成本常高于重写所以未经邀请的 PR 通常不被接受、可能未评审就关闭想加功能或修问题先开 issue 讨论。两个例外翻译与语言修复始终欢迎已对项目做出重大贡献且风格一致的人可跳过讨论。界面支持 37 种语言含简繁中文、日、韩、俄、德、西等语言文件在 Stats/Supporting Files/ 下各*.lproj/Localizable.strings新增语言或改进现有翻译始终受欢迎。最划算的参与方式报 bug、改翻译、通过 issue 提想法。【免费下载链接】statsmacOS system monitor in your menu bar项目地址: https://gitcode.com/GitHub_Trending/st/stats创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑