迫于在 Mac 没找到喜欢的网速监控工具,所以又造了一个

2021-06-05 17:10:35 +08:00
 foam

之前使用 IStat 来看网速,换了个电脑后,想找个免费的软件。但能找到的都是类似 Tencent Lemon 这类只能看总体流量的软件,无法看到每个进程的。

后面有了解到 eulstats 这类监控聚合软件,确实挺齐全的。不过我只想要个网速监控,于是在 V2EX 搜索了关键词,找到了这类软件看了下源码,一些是自己调 mac api 统计的,一些是轮询 nettop 实现的( eul 和 stats 也是轮询 nettop )。

轮询 nettop 有个问题,就是计算得不是很准确,毕竟有个时间差在那。不在意这点误差的也无所谓啦。不过我还是希望能够准确一些,所以尝试了 nettop 的 delta 模式,在该模式下,是由 nettop 来计算每个时间周期的流量增量,所以应该是很准确的了。但如果在子进程使用这个模式去拉取数据,也有一些棘手的问题:

  1. 直接执行命令,无法实时获取到标准输出,需要用 script 命令包一下
  2. nettop 如果关闭标准输入,会导致该进程的 cpu 占用非常高。需要想办法 block 住标准输入(不确定是否为 nettop 的 bug )
  3. 增量数据逐行输出,不是很好判断什么时候到了本次输出的最后一行。所以用防抖(限流?)的思想,等待 ms 时间若没有新的数据则认为本周期结束,可以输出

为了解决上述问题,用 go 包了一层,有兴趣的同学可以看看 源码

言归正传,这个应用是用 swiftUI 写的(所以要求 macOS 版本 >= 10.15 )。因此,能够较好地适应 dark 模式

欢迎盆友们可以 Star 支持一下,也可以提 PR 、issue 以改进该项目吖~Github 地址: https://github.com/foamzou/ITraffic-monitor-for-mac

最后附上在 light/dark 模式下的截图

周末愉快~

7608 次点击
所在节点    分享创造
33 条回复
hstdt
2021-06-05 19:00:19 +08:00
装了 surge 的话,流量会算在 surge 上。iStat 的做法是展示两个相同流量。
duxiansen
2021-06-05 19:05:00 +08:00
支持一下,不过在我电脑上左侧图标特别靠近左侧边缘,几乎没有间隙。Mac 2015 款 LT2 ,版本 11.4
has
2021-06-05 19:14:38 +08:00
不错 支持一个!
easylee
2021-06-05 19:26:02 +08:00
此类工具爱的不要不要的,sharing 。
kuoruan
2021-06-05 19:32:58 +08:00
Tencent Lemon 支持看每个进程的流量啊
网络测速 -> 流量监控
foam
2021-06-05 20:28:11 +08:00
@hstdt #1
刚看了下 nettop 似乎区分不了 😂

@duxiansen #2 @has #3 @easylee #4
谢谢支持

@duxiansen #2 我刚用朋友的 11.2 测试了下,果然图标的 padding 很少,下个版本给 11.0+ 补上。另外麻烦帮忙看看 11.4 的 cpu 占用情况怎么样。正常情况下 cpu 不会高于 0.5%,但看我朋友的 11.2 cpu 到了 30%,想看看 11.4 的情况。


@kuoruan #5 刚看了下,原来我的是 Tencent Lemon Lite 😂
terencehan
2021-06-05 21:25:28 +08:00
![截屏 2021-06-05 下午 9.24.14.png]( https://ae01.alicdn.com/kf/He666dfe35d174547ac201b6e197c6ceaU.png)

求教,上图中的图标是什么软件
foam
2021-06-05 22:08:18 +08:00
@terencehan #7 这个是 mac 自带的 VPN (网络偏好设置)。因为常常用到,所以我把 VPN 状态显示在了菜单栏
Hsinyao
2021-06-05 23:05:29 +08:00
感谢楼主,爱了爱了
dhou45
2021-06-05 23:16:29 +08:00
谢谢分享! 想问下能不能把每个 App 总体流量统计的功能也加上?
foam
2021-06-06 00:35:32 +08:00
@Hsinyao #9 谢谢支持

@dhou45 #10 会有的哦,已加入 RoadMap
foam
2021-06-06 02:23:39 +08:00
@duxiansen #2
已经在 macOS 11.0+ 上修复了 UI 问题哦,可以再试试
另外,我在 10.15 和 11.4 上测试,cpu 使用率是正常的。但在 11.2 仍旧有 cpu 高达 20-30% 的问题,暂时没有头绪。
neighbads
2021-06-07 10:11:45 +08:00
支持一下!最近正在找这个
SimonOne
2021-06-07 11:58:27 +08:00
@foam #12 😏 加入 brew 支持不
foam
2021-06-07 12:24:04 +08:00
@neighbads 谢谢支持。

@SimonOne 安排
qianxiaoxiao
2021-06-07 17:56:27 +08:00
`您使用的是 macOS 10.14.6 。该应用程序要求 macOS 10.15 或更高版本。`
能不能支持一下 10.14 版本
terencehan
2021-06-07 18:31:13 +08:00
@foam 好滴,感谢
foam
2021-06-07 21:01:39 +08:00
@qianxiaoxiao 不好意思,暂时没有<10.15 的支持计划噢
vueli
2021-06-08 13:59:08 +08:00
难受
[img][/img]
hronro
2021-06-11 20:32:23 +08:00
支持一个,不过我系统版本太低了用不了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/781574

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX