gpt4 book ai didi

Ruby:从/proc 获取 Linux 上的磁盘使用信息(或其他一些非阻塞且不会产生新进程的方式)

转载 作者:太空宇宙 更新时间:2023-11-04 10:55:24 24 4
gpt4 key购买 nike

上下文:

我在 Linux 上。我正在为 Sensu 编写磁盘使用扩展。扩展必须是非阻塞的,因为它们包含在代理的主代码循环中。它们还必须非常轻巧,因为它们可能每 10 秒触发一次,甚至每秒触发一次。

所以我无法生成新的可执行文件来收集磁盘使用信息。在 Ruby 中,我只能在/proc 和/sys 上执行 File.open() 之类的操作,读取内容,解析它,file.close(),然后打印结果。重复。

我找到了 sys-filesystem gem,它似乎拥有我需要的一切。但如果可以避免的话,我宁愿不强制扩展依赖于 gems。如果事实证明它是最好的方法,我会使用 gem,但是有没有更好的选择?不需要大量编码的东西?

最佳答案

可以通过系统调用statfs获取信息

http://man7.org/linux/man-pages/man2/statfs.2.html

我可以看到这里有一个 ruby​​ 接口(interface):

http://ruby-doc.org/core-trunk/File/Statfs.html

关于Ruby:从/proc 获取 Linux 上的磁盘使用信息(或其他一些非阻塞且不会产生新进程的方式),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29018932/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com