Last active
October 10, 2025 12:07
-
-
Save fortuna/ea92f0ac0e7543ed5feea75902880ca0 to your computer and use it in GitHub Desktop.
Revisions
-
fortuna revised this gist
Feb 21, 2019 . 2 changed files with 94 additions and 5 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -20,6 +20,11 @@ Live UDP associations: shadowsocks_udp_nat_entries_added - shadowsocks_udp_nat_entries_removed ``` Time to find cipher: ``` shadowsocks_time_to_cipher_ms{access_key!=""} ``` CPU seconds per second (averaged over 10m): ``` rate(process_cpu_seconds_total[10m]) This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -862,6 +862,90 @@ "alignLevel": null } }, { "aliasColors": {}, "bars": false, "dashLength": 10, "dashes": false, "fill": 1, "gridPos": { "h": 7, "w": 12, "x": 12, "y": 25 }, "id": 22, "legend": { "avg": false, "current": false, "max": false, "min": false, "show": true, "total": false, "values": false }, "lines": true, "linewidth": 1, "links": [], "nullPointMode": "null", "percentage": false, "pointradius": 5, "points": false, "renderer": "flot", "seriesOverrides": [], "spaceLength": 10, "stack": false, "steppedLine": false, "targets": [ { "expr": "shadowsocks_time_to_cipher_ms{access_key!=\"\"}", "format": "time_series", "intervalFactor": 1, "legendFormat": "{{access_key}} {{location}} {{proto}} {{quantile}}", "refId": "A" } ], "thresholds": [], "timeFrom": null, "timeRegions": [], "timeShift": null, "title": "Time to Cipher", "tooltip": { "shared": true, "sort": 0, "value_type": "individual" }, "type": "graph", "xaxis": { "buckets": null, "mode": "time", "name": null, "show": true, "values": [] }, "yaxes": [ { "format": "dtdurationms", "label": null, "logBase": 10, "max": null, "min": null, "show": true }, { "format": "short", "label": "", "logBase": 1, "max": null, "min": null, "show": true } ], "yaxis": { "align": false, "alignLevel": null } }, { "cacheTimeout": null, "colorBackground": false, @@ -882,8 +966,8 @@ "gridPos": { "h": 7, "w": 5, "x": 1, "y": 32 }, "id": 16, "interval": null, @@ -961,8 +1045,8 @@ "gridPos": { "h": 7, "w": 4, "x": 6, "y": 32 }, "id": 18, "interval": null, @@ -1061,5 +1145,5 @@ "timezone": "browser", "title": "Outline", "uid": "kQkHzYcmz", "version": 5 } -
fortuna revised this gist
Feb 21, 2019 . No changes.There are no files selected for viewing
-
fortuna revised this gist
Feb 21, 2019 . 2 changed files with 32 additions and 3 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,2 +1,31 @@ # Example Queries 1h active keys by location: ``` sum(max(increase(shadowsocks_data_bytes{access_key!=""} [1h])) by (access_key, location) > bool 0) by (location) ```` 1h usage by location: ``` sum(increase(shadowsocks_data_bytes{dir=~"c<p|p>t"} [1h])) by (location) ``` Open TCP connections: ``` sum(shadowsocks_tcp_connections_opened) - sum(shadowsocks_tcp_connections_closed) ``` Live UDP associations: ``` shadowsocks_udp_nat_entries_added - shadowsocks_udp_nat_entries_removed ``` CPU seconds per second (averaged over 10m): ``` rate(process_cpu_seconds_total[10m]) ``` Uptime: ``` time() - process_start_time_seconds{job="outline-server-main"} ``` This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -284,7 +284,7 @@ "refId": "C" }, { "expr": "sum(increase(shadowsocks_data_bytes{dir=~\"c<p|p>t\"} [4w]))", "format": "time_series", "interval": "1h", "intervalFactor": 1, @@ -1061,5 +1061,5 @@ "timezone": "browser", "title": "Outline", "uid": "kQkHzYcmz", "version": 4 } -
fortuna revised this gist
Feb 21, 2019 . 1 changed file with 2 additions and 0 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,2 @@ sum(max(increase(shadowsocks_data_bytes{access_key!=\"\"} [1h])) by (access_key, location) > bool 0) by (location) -
fortuna created this gist
Feb 21, 2019 .There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,1065 @@ { "annotations": { "list": [ { "builtIn": 1, "datasource": "-- Grafana --", "enable": true, "hide": true, "iconColor": "rgba(0, 211, 255, 1)", "name": "Annotations & Alerts", "type": "dashboard" } ] }, "editable": true, "gnetId": null, "graphTooltip": 0, "id": 2, "links": [], "panels": [ { "collapsed": false, "gridPos": { "h": 1, "w": 24, "x": 0, "y": 0 }, "id": 10, "panels": [], "title": "Are users using the service?", "type": "row" }, { "aliasColors": {}, "bars": false, "dashLength": 10, "dashes": false, "fill": 1, "gridPos": { "h": 8, "w": 8, "x": 0, "y": 1 }, "id": 14, "legend": { "avg": false, "current": false, "max": false, "min": false, "show": true, "total": false, "values": false }, "lines": true, "linewidth": 1, "links": [], "nullPointMode": "null", "percentage": false, "pointradius": 5, "points": false, "renderer": "flot", "seriesOverrides": [], "spaceLength": 10, "stack": false, "steppedLine": false, "targets": [ { "expr": "sum(max(increase(shadowsocks_data_bytes{access_key!=\"\"} [1h])) by (access_key, location) > bool 0) by (location)", "format": "time_series", "hide": false, "interval": "", "intervalFactor": 1, "legendFormat": "1h {{location}}", "refId": "A" }, { "expr": "sum(max(max_over_time(shadowsocks_data_bytes{access_key!=\"\"} [1d])) by (access_key) > bool 0)", "format": "time_series", "hide": false, "interval": "1h", "intervalFactor": 1, "legendFormat": "1d", "refId": "B" }, { "expr": "sum(max(max_over_time(shadowsocks_data_bytes{access_key!=\"\"} [7d])) by (access_key) > bool 0)", "format": "time_series", "interval": "1h", "intervalFactor": 1, "legendFormat": "7d", "refId": "C" } ], "thresholds": [], "timeFrom": null, "timeRegions": [], "timeShift": null, "title": "Active Access Keys", "tooltip": { "shared": true, "sort": 0, "value_type": "individual" }, "type": "graph", "xaxis": { "buckets": null, "mode": "time", "name": null, "show": true, "values": [] }, "yaxes": [ { "format": "short", "label": null, "logBase": 1, "max": null, "min": null, "show": true }, { "format": "short", "label": null, "logBase": 1, "max": null, "min": null, "show": true } ], "yaxis": { "align": false, "alignLevel": null } }, { "aliasColors": {}, "bars": false, "dashLength": 10, "dashes": false, "fill": 1, "gridPos": { "h": 8, "w": 8, "x": 8, "y": 1 }, "id": 20, "legend": { "avg": false, "current": false, "max": false, "min": false, "show": true, "total": false, "values": false }, "lines": true, "linewidth": 1, "links": [], "nullPointMode": "null", "percentage": false, "pointradius": 5, "points": false, "renderer": "flot", "seriesOverrides": [], "spaceLength": 10, "stack": false, "steppedLine": false, "targets": [ { "expr": "sum(rate(shadowsocks_data_bytes[1h])) by (access_key)", "format": "time_series", "intervalFactor": 1, "legendFormat": "{{access_key}}", "refId": "A" } ], "thresholds": [], "timeFrom": null, "timeRegions": [], "timeShift": null, "title": "Access Key 1h Activity", "tooltip": { "shared": true, "sort": 0, "value_type": "individual" }, "type": "graph", "xaxis": { "buckets": null, "mode": "time", "name": null, "show": true, "values": [] }, "yaxes": [ { "format": "Bps", "label": null, "logBase": 10, "max": null, "min": null, "show": true }, { "format": "short", "label": null, "logBase": 1, "max": null, "min": null, "show": true } ], "yaxis": { "align": false, "alignLevel": null } }, { "aliasColors": {}, "bars": false, "dashLength": 10, "dashes": false, "editable": true, "error": false, "fill": 1, "grid": {}, "gridPos": { "h": 8, "w": 8, "x": 16, "y": 1 }, "id": 2, "legend": { "avg": false, "current": false, "hideEmpty": true, "hideZero": true, "max": false, "min": false, "show": true, "total": false, "values": false }, "lines": true, "linewidth": 2, "links": [], "nullPointMode": "connected", "percentage": false, "pointradius": 5, "points": false, "renderer": "flot", "seriesOverrides": [], "spaceLength": 10, "stack": false, "steppedLine": false, "targets": [ { "expr": "sum(increase(shadowsocks_data_bytes{dir=~\"c<p|p>t\"} [1h])) by (location)", "format": "time_series", "hide": false, "intervalFactor": 2, "legendFormat": "1h {{location}}", "metric": "shadowsocks_data_proxy_client_bytes", "refId": "A" }, { "expr": "sum(increase(shadowsocks_data_bytes{dir=~\"c<p|p>t\"} [1d]))", "format": "time_series", "interval": "1h", "intervalFactor": 1, "legendFormat": "1d", "refId": "B" }, { "expr": "sum(increase(shadowsocks_data_bytes{dir=~\"c<p|p>t\"} [7d]))", "format": "time_series", "interval": "1h", "intervalFactor": 1, "legendFormat": "7d", "refId": "C" }, { "expr": "sum(increase(shadowsocks_data_bytes{dir=~\"c<p|p>t\"} [10w]))", "format": "time_series", "interval": "1h", "intervalFactor": 1, "legendFormat": "4w", "refId": "D" } ], "thresholds": [], "timeFrom": null, "timeRegions": [], "timeShift": null, "title": "Total Data usage", "tooltip": { "shared": true, "sort": 2, "value_type": "cumulative" }, "type": "graph", "xaxis": { "buckets": null, "mode": "time", "name": null, "show": true, "values": [] }, "yaxes": [ { "format": "bytes", "logBase": 10, "max": null, "min": "0", "show": true }, { "format": "short", "logBase": 1, "max": null, "min": null, "show": true } ], "yaxis": { "align": false, "alignLevel": null } }, { "collapsed": false, "gridPos": { "h": 1, "w": 24, "x": 0, "y": 9 }, "id": 12, "panels": [], "title": "Is the service healthy?", "type": "row" }, { "aliasColors": {}, "bars": false, "dashLength": 10, "dashes": false, "editable": true, "error": false, "fill": 1, "grid": {}, "gridPos": { "h": 8, "w": 12, "x": 0, "y": 10 }, "id": 4, "legend": { "alignAsTable": false, "avg": false, "current": false, "max": false, "min": false, "show": true, "total": false, "values": false }, "lines": true, "linewidth": 2, "links": [], "nullPointMode": "connected", "percentage": false, "pointradius": 5, "points": false, "renderer": "flot", "seriesOverrides": [ { "alias": "{instance=\"localhost:9091\",job=\"outline-ss-server\"}", "yaxis": 2 }, { "alias": "cpu", "yaxis": 2 }, { "alias": "cpu prometheus", "yaxis": 2 }, { "alias": "cpu outline-ss-server", "yaxis": 2 } ], "spaceLength": 10, "stack": false, "steppedLine": false, "targets": [ { "expr": "rate(process_cpu_seconds_total[10m])", "format": "time_series", "instant": false, "intervalFactor": 2, "legendFormat": "cpu {{job}}", "metric": "process_cpu_seconds_total", "refId": "A" }, { "expr": "go_goroutines", "format": "time_series", "intervalFactor": 2, "legendFormat": "go_goroutines {{job}}", "metric": "go_goroutines", "refId": "B" } ], "thresholds": [], "timeFrom": null, "timeRegions": [], "timeShift": null, "title": "Process", "tooltip": { "shared": true, "sort": 0, "value_type": "cumulative" }, "type": "graph", "xaxis": { "buckets": null, "mode": "time", "name": null, "show": true, "values": [] }, "yaxes": [ { "format": "none", "label": "", "logBase": 1, "max": null, "min": 0, "show": true }, { "format": "percentunit", "logBase": 1, "max": null, "min": 0, "show": true } ], "yaxis": { "align": false, "alignLevel": null } }, { "aliasColors": {}, "bars": false, "dashLength": 10, "dashes": false, "editable": true, "error": false, "fill": 1, "grid": {}, "gridPos": { "h": 8, "w": 12, "x": 12, "y": 10 }, "id": 3, "legend": { "alignAsTable": false, "avg": false, "current": false, "max": false, "min": false, "show": true, "total": false, "values": false }, "lines": true, "linewidth": 2, "links": [], "nullPointMode": "connected", "percentage": false, "pointradius": 5, "points": false, "renderer": "flot", "seriesOverrides": [ { "alias": "udp nat entries", "yaxis": 2 }, { "alias": "process_open_fds{instance=\"localhost:9091\",job=\"outline-ss-server\"}", "yaxis": 2 }, { "alias": "process_open_fds{instance=\"localhost:9090\",job=\"prometheus\"}", "yaxis": 2 }, { "alias": "open_fds outline-ss-server", "yaxis": 2 }, { "alias": "open_fds prometheus", "yaxis": 2 } ], "spaceLength": 10, "stack": false, "steppedLine": false, "targets": [ { "expr": "process_virtual_memory_bytes", "format": "time_series", "intervalFactor": 2, "legendFormat": "virtual_memory {{job}}", "metric": "process_virtual_memory_bytes", "refId": "C" }, { "expr": "shadowsocks_udp_nat_entries_added - shadowsocks_udp_nat_entries_removed", "format": "time_series", "intervalFactor": 2, "legendFormat": "udp nat entries", "metric": "", "refId": "A" }, { "expr": "process_open_fds", "format": "time_series", "intervalFactor": 1, "legendFormat": "open_fds {{job}}", "refId": "B" } ], "thresholds": [], "timeFrom": null, "timeRegions": [], "timeShift": null, "title": "Memory", "tooltip": { "shared": true, "sort": 0, "value_type": "cumulative" }, "type": "graph", "xaxis": { "buckets": null, "mode": "time", "name": null, "show": true, "values": [] }, "yaxes": [ { "format": "bytes", "label": "", "logBase": 1, "max": null, "min": 0, "show": true }, { "format": "short", "logBase": 1, "max": null, "min": 0, "show": true } ], "yaxis": { "align": false, "alignLevel": null } }, { "aliasColors": {}, "bars": false, "dashLength": 10, "dashes": false, "editable": true, "error": false, "fill": 1, "grid": {}, "gridPos": { "h": 7, "w": 12, "x": 0, "y": 18 }, "id": 6, "legend": { "avg": false, "current": false, "hideEmpty": true, "hideZero": true, "max": false, "min": false, "show": true, "total": false, "values": false }, "lines": true, "linewidth": 2, "links": [], "nullPointMode": "null", "percentage": false, "pointradius": 5, "points": false, "renderer": "flot", "seriesOverrides": [ { "alias": "/count/", "yaxis": 2 } ], "spaceLength": 10, "stack": false, "steppedLine": false, "targets": [ { "expr": "sum(increase(shadowsocks_tcp_connection_duration_ms_count [10m])) by (access_key, status)", "format": "time_series", "hide": false, "instant": false, "intervalFactor": 2, "legendFormat": "count/s {{access_key}} {{status}}", "metric": "shadowsocks_tcp_connection_duration_ms", "refId": "A" }, { "expr": "sum(rate(shadowsocks_tcp_connection_duration_ms_sum [10m])) by (access_key,status) / sum(rate(shadowsocks_tcp_connection_duration_ms_count [10m])) by (access_key, status)", "format": "time_series", "hide": false, "instant": false, "intervalFactor": 2, "legendFormat": "duration {{access_key}} {{status}}", "refId": "B" } ], "thresholds": [], "timeFrom": null, "timeRegions": [], "timeShift": null, "title": "Connections", "tooltip": { "shared": true, "sort": 0, "value_type": "cumulative" }, "type": "graph", "xaxis": { "buckets": null, "mode": "time", "name": null, "show": true, "values": [] }, "yaxes": [ { "format": "ms", "label": "", "logBase": 1, "max": null, "min": null, "show": true }, { "format": "short", "logBase": 1, "max": null, "min": null, "show": true } ], "yaxis": { "align": false, "alignLevel": null } }, { "aliasColors": {}, "bars": false, "dashLength": 10, "dashes": false, "editable": true, "error": false, "fill": 1, "grid": {}, "gridPos": { "h": 7, "w": 12, "x": 12, "y": 18 }, "id": 7, "legend": { "avg": false, "current": false, "max": false, "min": false, "show": true, "total": false, "values": false }, "lines": true, "linewidth": 2, "links": [], "nullPointMode": "connected", "percentage": false, "pointradius": 5, "points": false, "renderer": "flot", "seriesOverrides": [], "spaceLength": 10, "stack": false, "steppedLine": false, "targets": [ { "expr": "sum(shadowsocks_tcp_connections_opened) - sum(shadowsocks_tcp_connections_closed)", "format": "time_series", "hide": false, "intervalFactor": 2, "legendFormat": "", "metric": "", "refId": "B" } ], "thresholds": [], "timeFrom": null, "timeRegions": [], "timeShift": null, "title": "Open TCP Connections", "tooltip": { "shared": true, "sort": 0, "value_type": "cumulative" }, "type": "graph", "xaxis": { "buckets": null, "mode": "time", "name": null, "show": true, "values": [] }, "yaxes": [ { "format": "short", "logBase": 1, "max": null, "min": 0, "show": true }, { "format": "short", "logBase": 1, "max": null, "min": null, "show": true } ], "yaxis": { "align": false, "alignLevel": null } }, { "aliasColors": {}, "bars": false, "dashLength": 10, "dashes": false, "editable": true, "error": false, "fill": 1, "grid": {}, "gridPos": { "h": 7, "w": 12, "x": 0, "y": 25 }, "id": 8, "legend": { "avg": false, "current": false, "hideEmpty": true, "hideZero": true, "max": false, "min": false, "show": true, "total": false, "values": false }, "lines": true, "linewidth": 2, "links": [], "nullPointMode": "null", "percentage": false, "pointradius": 5, "points": false, "renderer": "flot", "seriesOverrides": [], "spaceLength": 10, "stack": false, "steppedLine": false, "targets": [ { "expr": "sum(increase(shadowsocks_tcp_connections_closed{status=~\"ERR_.*\"} [10m])) by (status, access_key)", "format": "time_series", "intervalFactor": 2, "legendFormat": "{{status}} {{access_key}}", "metric": "shadowsocks_tcp_closed_connections", "refId": "A" } ], "thresholds": [], "timeFrom": null, "timeRegions": [], "timeShift": null, "title": "Errors", "tooltip": { "shared": true, "sort": 2, "value_type": "cumulative" }, "type": "graph", "xaxis": { "buckets": null, "mode": "time", "name": null, "show": true, "values": [] }, "yaxes": [ { "format": "short", "logBase": 1, "max": null, "min": null, "show": true }, { "format": "short", "logBase": 1, "max": null, "min": null, "show": true } ], "yaxis": { "align": false, "alignLevel": null } }, { "cacheTimeout": null, "colorBackground": false, "colorValue": false, "colors": [ "#299c46", "rgba(237, 129, 40, 0.89)", "#d44a3a" ], "format": "s", "gauge": { "maxValue": 100, "minValue": 0, "show": false, "thresholdLabels": false, "thresholdMarkers": true }, "gridPos": { "h": 7, "w": 5, "x": 12, "y": 25 }, "id": 16, "interval": null, "links": [], "mappingType": 1, "mappingTypes": [ { "name": "value to text", "value": 1 }, { "name": "range to text", "value": 2 } ], "maxDataPoints": 100, "nullPointMode": "connected", "nullText": null, "postfix": "", "postfixFontSize": "50%", "prefix": "", "prefixFontSize": "50%", "rangeMaps": [ { "from": "null", "text": "N/A", "to": "null" } ], "sparkline": { "fillColor": "rgba(31, 118, 189, 0.18)", "full": false, "lineColor": "rgb(31, 120, 193)", "show": false }, "tableColumn": "", "targets": [ { "expr": "time() - process_start_time_seconds{job=\"outline-server-main\"}", "format": "time_series", "intervalFactor": 1, "refId": "A" } ], "thresholds": "", "title": "uptime", "type": "singlestat", "valueFontSize": "80%", "valueMaps": [ { "op": "=", "text": "N/A", "value": "null" } ], "valueName": "current" }, { "cacheTimeout": null, "colorBackground": false, "colorValue": false, "colors": [ "#299c46", "rgba(237, 129, 40, 0.89)", "#d44a3a" ], "format": "none", "gauge": { "maxValue": 100, "minValue": 0, "show": false, "thresholdLabels": false, "thresholdMarkers": true }, "gridPos": { "h": 7, "w": 4, "x": 17, "y": 25 }, "id": 18, "interval": null, "links": [], "mappingType": 1, "mappingTypes": [ { "name": "value to text", "value": 1 }, { "name": "range to text", "value": 2 } ], "maxDataPoints": 100, "nullPointMode": "connected", "nullText": null, "postfix": "", "postfixFontSize": "50%", "prefix": "", "prefixFontSize": "50%", "rangeMaps": [ { "from": "null", "text": "N/A", "to": "null" } ], "sparkline": { "fillColor": "rgba(31, 118, 189, 0.18)", "full": false, "lineColor": "rgb(31, 120, 193)", "show": false }, "tableColumn": "", "targets": [ { "expr": "shadowsocks_keys", "format": "time_series", "intervalFactor": 1, "refId": "A" } ], "thresholds": "", "title": "Total Access Keys", "type": "singlestat", "valueFontSize": "80%", "valueMaps": [ { "op": "=", "text": "N/A", "value": "null" } ], "valueName": "avg" } ], "refresh": "5m", "schemaVersion": 16, "style": "dark", "tags": [], "templating": { "list": [] }, "time": { "from": "now-2d", "to": "now" }, "timepicker": { "now": true, "refresh_intervals": [ "5s", "10s", "30s", "1m", "5m", "15m", "30m", "1h", "2h", "1d" ], "time_options": [ "5m", "15m", "1h", "6h", "12h", "24h", "2d", "7d", "30d" ] }, "timezone": "browser", "title": "Outline", "uid": "kQkHzYcmz", "version": 3 }