V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
caizixian
V2EX  ›  分享创造

流量监控即服务

  •  1
     
  •   caizixian ·
    caizixian · 2015-01-22 18:11:59 +08:00 · 4392 次点击
    这是一个创建于 3386 天前的主题,其中的信息可能已经有所发展或是发生改变。

    https://github.com/caizixian/tcpstat

    前一段时间搞了个,觉得大家在这方面应该是有些需求的,比如卖**的奸商、服务器合租什么的。假如多个项目都需要使用,那么来一个平台自然是不错的。

    这算是第一个弄出来的开源项目,希望大家觉得有用。做了个很dirty的prototype,大家可以一起开发。(Pull requests or Organization)

    目前做到的功能如下:

    读取配置文件,然后程序会创建iptables规则,并进行数据库初始化。接下来只要写一下crontab,每隔一段时间update db即可。

    配置文件格式:

    [Groups]
    Name:Gp1,Gp2
    
    [Gp1]
    Port:2,2000-3000
    Webhook:http://localhost/api/v1/tcpstats
    
    [Gp2]
    Port:80,443
    Webhook:http://localhost:8080/api/v1/tcpstats
    

    命令行参数:

    tcpstat [-c] -v|i|u|m

    • 可选参数 -c FILE 指定配置文件路径,默认/etc/tcpstat/config
    • -v 版本
    • -i 初始化iptables规则
    • -u 获取最近数据并更新数据库
    • -m 当配置文件改变时,migrate数据库

    依赖的安装

    sudo apt-get update
    sudo apt-get install -y mongodb python-pip python-dev build-essential
    sudo pip install -r /vagrant/requirements.txt
    

    已上传到PyPI

    待开发功能:

    可见issue https://github.com/caizixian/tcpstat/issues

    Milestone 0.1.0:

    Milestone 0.2.0:

    Milestone 0.3.0:

    第 1 条附言  ·  2015-01-22 22:16:26 +08:00
    具体功能:
    分组监控每个端口的流量,并按照你所设定的时间向你其他的应用的webhook发一个POST告知目前的信息,来进行计费或合租VPS时的流量限制。
    Reply to @wzxjohn
    CC @mengskysama
    5 条回复    2015-02-24 02:22:06 +08:00
    woochun
        1
    woochun  
       2015-01-22 20:39:46 +08:00
    虽然看不懂,还是要支持的
    wzxjohn
        2
    wzxjohn  
       2015-01-22 21:54:15 +08:00
    看了半天反正没懂这个软件到底能监控啥。。。
    zjgood
        3
    zjgood  
       2015-01-22 22:34:38 +08:00 via Android
    666,thx
    20150517
        4
    20150517  
       2015-01-22 23:02:06 +08:00 via Android
    munin不就可以了吗?有那插件的
    kslr
        5
    kslr  
       2015-02-24 02:22:06 +08:00 via Android
    Mark
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2292 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 09:11 · PVG 17:11 · LAX 02:11 · JFK 05:11
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.