Skip to content
ssmanager web daemon, supports multi methods & influxdb.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


Web daemon for ssmanager, which supports multi methods for different ports.
Instead of checking port lists periodically, you need to trigger web hook manually for port info updating.
You can enable logging traffic to InfluxDB, which can be nicely viewed in Grafana.

Install via pip3

pip3 install git+
pip3 install git+
pip3 install git+
ssmanager-nopanel -h # print usage
ssmanager-nopanel # run demo without traffic logging

Note: Only Python 3.6 tested. Other 3.x versions may work. 2.x not supported.

Docker Demo

Log traffic to influxdb & display in grafana

Install docker

curl -fsSL | bash


export IP_Private=
# Non-public IP suggested because influxdb auth not enabled by default

docker run --name influxdb \
    -p ${IP_Private}:8086:8086 \
    -v $PWD/influxdb:/var/lib/influxdb \
    -d --restart unless-stopped \
    influxdb   # Start influxdb

curl -i -XPOST http://${IP_Private}:8086/query \
    --data-urlencode "q=CREATE DATABASE tsadmin"    # create db


export URL_influxdb=http://${IP_Private}:8086/write?db=tsadmin
docker run --name ss-mgr -d --net host fzinfz/ss:mgr -d $URL_influxdb 
docker logs ss-mgr # check logs

Check InfluxDB

curl -G "http://${IP_Private}:8086/query?db=tsadmin&pretty=true" \
    --data-urlencode "q=SELECT * FROM ss GROUP BY * ORDER BY time DESC LIMIT 1"  # query latest traffic

curl -G "http://${IP_Private}:8086/query?db=tsadmin&pretty=true" \
    --data-urlencode "q=SELECT count(\"value\") FROM ss GROUP BY *"  # count traffic items


docker run -d --name grafana --net host grafana/grafana
# Traffic dashboard: http://server_ip:3000, user/password:admin/admin

Grafana query

SELECT "value" FROM "ss" GROUP BY port

Trigger config update

curl http://localhost:8000/update  # replace `localhost` to your own remote address


This module works without a panel. It just read remote json file and write to influxdb. But there is a panel existing for management:

You can’t perform that action at this time.