返回目录
开源项目系统与运维类新手

Stats:macOS 菜单栏系统监控开源应用(exelban/stats)

Stats 是一款 macOS 菜单栏系统监控应用,可查看 CPU/GPU 占用、内存、磁盘、网络、电池、风扇、传感器(温度/电压/功率)、蓝牙设备与多时区时钟。支持 macOS 12 (Monterey) 及以上正式版,可通过下载 Stats.dmg 手动安装或使用 Homebrew 安装,源码以 MIT 许可证开放。

0 次阅读2026/09/10 发布
Stats:macOS 菜单栏系统监控开源应用(exelban/stats) 来源图片

社区作者 · zZz

它解决什么问题

Stats 是一个开源的 macOS 系统监控应用,常驻菜单栏,用于实时查看本机各项系统指标。

主要功能(正文“Features”列举):

  • CPU 占用率
  • GPU 占用率
  • 内存使用
  • 磁盘使用
  • 网络使用
  • 电池电量
  • 风扇控制(not maintained,不再维护)
  • 传感器信息(温度/电压/功率)
  • 蓝牙设备
  • 多时区时钟

界面示意:配图 1 为应用图标(icon_256x256),配图 2 为菜单栏菜单样式(menus,v2.3.2),配图 3 为弹出面板样式(popups,v2.3.2)。

系统要求:支持 macOS 12 (Monterey) 及更新版本;不支持 macOS Beta 版本,仅支持稳定版。较旧系统可使用项目提供的 Legacy version。

隐私与外部 API:Stats 不收集任何 telemetry 或分析数据。它仅向以下 API 发起外部请求:

两者都用于检查更新;此外获取公网 IP 也需要外部请求,作者为避免使用第三方服务,使用了自己的服务器。如果对此有顾虑,可以:提交 PR 让这些功能不依赖外部服务器;或使用网络过滤应用(如 Little Snitch)屏蔽这两个服务器,但同时也不会收到更新、网络模块中也不会显示公网 IP。

  • https://api.mac-stats.com —— 用于检查更新和获取公网 IP 地址
  • https://api.github.com —— 检查更新的备用渠道

功耗优化:每个模块都有各自的开销,最耗资源的模块是 Sensors 和 Bluetooth,禁用这两个模块在某些情况下可将 CPU 占用与能效开销降低最多约 50%。

传感器与核心数的说明:CPU/GPU 传感器本质是 CPU/GPU 上的热区(thermal zones / sensors),与核心数量或具体核心无关。例如一颗 CPU 通常分为能效核与性能核两个集群,每个集群包含多个温度传感器,Stats 只是把这些传感器显示出来;“CPU Efficient Core 1”并不代表单个能效核的温度,而只是能效核集群中某一个温度传感器。此外,Apple 每代 SoC 都会更改传感器 key,因此需要时间来确定哪些 SMC 值对应哪些传感器。

风扇控制:处于 legacy 模式,不再接收任何更新或修复。保留在应用中的原因是它在老款 Mac 上表现尚可。作者欢迎通过 PR 提交修复或改进,但没有时间与精力为该功能提供支持。

崩溃处理建议:先确认使用的是最新版 Stats(很可能已有修复);若已是最新版,请查看 open issues;只有当现有 issue 都未覆盖你的问题时,才应新开 issue。若 issue 被无回复地关闭,多半是重复问题,请用已关闭 issue 搜索答案。

贡献模式(Open source, but not open contribution):Stats 是开源项目,完整源码以 MIT 许可证公开,可自由阅读、学习、fork 并构建自己的版本;但它不是开放贡献项目,由单人开发维护,稳定与一致性优先于接受所有改动。未经请求的 PR 通常不被接受,可能未经审查即关闭。想改动或新增功能,请先开 issue 讨论。例外是翻译与语言修正(始终欢迎),以及对项目已有重大贡献者的实现。最佳支持方式是报告 bug、改进翻译、通过 issue 提想法。

支持语言(正文列出的多语言,含中文简体、中文繁体、英语、德语、日语、韩语等数十种),可通过新增语言或改进现有翻译来参与。

许可证:MIT License。

— 本文由 AI 根据公开来源辅助整理,命令、版本与许可证请在使用前到原始页面复核。

安装 / 开始使用

安装前准备:确认系统为 macOS 12 (Monterey) 或更高版本的正式版(不支持 macOS Beta);若使用 Homebrew 方式,需已安装 Homebrew,并打开 Terminal(终端)应用。

方式一:手动安装

  1. 从项目页面(正文中的 “here” 链接,即 Releases 页面)下载最新版本。
  1. 下载得到名为 Stats.dmg 的文件。
  1. 打开该文件。
  1. 把应用移到“应用程序”(Applications)文件夹。

方式二:Homebrew 安装

  1. 打开 Terminal 应用。

步骤 2 · 输入命令:

可复制命令
brew install stats

首次运行:从“应用程序”启动 Stats,应用图标会出现在菜单栏;右键/点击图标可打开各监控模块与设置。

卸载(运行应用自带的卸载脚本,需要管理员权限以移除 SMC helper):

命令
sh /Applications/Stats.app/Contents/Resources/Scripts/uninstall.sh

该脚本会退出 Stats 并移除:

  • SMC helper(/Library/LaunchDaemons/eu.exelban.Stats.SMC.Helper.plist 和 /Library/PrivilegedHelperTools/eu.exelban.Stats.SMC.Helper)
  • Stats.app
  • 应用数据与偏好设置(~/Library/Application Support/Stats、widget 容器,以及 eu.exelban.Stats 的 defaults)

如果应用已被移动到“废纸篓”,可直接从仓库运行卸载脚本:

命令
curl -fsSL https://raw.githubusercontent.com/exelban/stats/master/Kit/scripts/uninstall.sh | sh

较旧系统:使用正文中 “Legacy version” 提供的旧版本。

常见问题(对应正文 FAQs)

  1. 如何调整菜单栏图标顺序:菜单栏项目顺序由 macOS 决定而非 Stats,安装后第一次重启可能变化。在 macOS Mojave (10.14) 及以上:按住 ⌘(command 键)→ 把图标拖到菜单栏中期望的位置 → 松开 ⌘。
  2. Stats 图标没有出现在菜单栏:macOS 26 在“系统设置 → 菜单栏”引入了新的隐私控制,应用必须在此被显式允许才能显示菜单栏项目。如果 Stats 正在运行、至少启用了一个模块且启用了一个小组件,但菜单栏没有任何图标,几乎可以确定是这个原因。解决方法:打开“系统设置 → 菜单栏”,把 Stats 切换为 ON。
  3. 桌面小组件不显示数据:由于负责应用与小组件通信的系统进程 chronod 在高数据负载下存在问题,Stats 侧默认关闭该通信。解决方法:打开 Stats 设置,把 macOS widgets 选项打开(ON)。
  4. 如何降低 Stats 的能耗或 CPU 占用:每个模块都有“代价”,最耗资源的是 Sensors 和 Bluetooth 模块;禁用这两个模块在某些情况下可将 CPU 占用和能耗开销降低最多约 50%。
  5. 风扇控制:处于 legacy 模式,不再更新或修复,官方不提供支持。
  6. 传感器显示的 CPU/GPU 核心数不正确:传感器其实是 CPU/GPU 上的热区,与核心数量或具体核心无关;不同集群只是多个温度传感器,且 Apple 每代 SoC 会更改传感器 key。
  7. 应用崩溃:先升级到最新版并查看 open issues,仅当现有 issue 未覆盖时再新开 issue。
  8. 外部请求:Stats 不收集 telemetry 或分析数据,仅请求 https://api.mac-stats.com(检查更新、获取公网 IP)与 https://api.github.com(检查更新的备用渠道);可用网络过滤应用屏蔽,但将无法收到更新、网络模块也不显示公网 IP。

来源教程配图

教程配图
配图 1 · 教程配图查看原图
Stats
配图 2 · Stats查看原图
Stats
配图 3 · Stats查看原图

适用场景

在 macOS 菜单栏实时监控 CPU 与 GPU 占用率
查看内存使用
磁盘使用与网络流量情况
查看电池电量
风扇状态与温度/电压/功率传感器信息
显示已连接的蓝牙设备与多时区时钟
通过禁用高开销模块(Sensors
Bluetooth)降低监控工具的 CPU 与能耗影响
面向 macOS 本地系统运维与性能排查场景