Categories
Guide 折腾

修改 ServerStatus-V 探针脚本配合 vnStat 2.x 版本使用

/usr/local/ServiceStatus/status-client.py

根据 vnStat 项目的变更日志--dumpdb 参数在 1.12 版本之后改名为听起来比较有文化的 --exportdb,但两者仍可以交替使用。然而来到 2.0 版本,--exportdb 的功能就被彻底放逐了。Ubuntu 20.04 里 apt 安装的 vnStat 版本是 2.6,而 Ubuntu 18.04 的则是比较老旧的 1.18 版本,所以探针能一直拖到今天才翻车。作者抛出的替代方案是使用 --oneline--json--xml 参数,但它们的输出和原来 --exportdb 的完全不一样,并不能单靠直接改指令完事。

既然我们只是要每月上传和下传的流量,我们可以利用 --oneline b 参数的输出作些小修改:

def liuliang():
        NET_IN = 0
        NET_OUT = 0
        vnstat=os.popen('vnstat --oneline b').readline()
        mdata=vnstat.split(";")
        NET_IN=int(mdata[8])
        NET_OUT=int(mdata[9])
        return NET_IN, NET_OUT

完美修复。

但更新系统的的坑应该是接二连三没错…

Leave a Reply