Merge pull request #1 from unifi-poller/dn2_auto_upload

Auto Upload
This commit is contained in:
David Newhall II 2020-02-04 11:00:01 -08:00 committed by GitHub
commit aa8427396e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
17 changed files with 91438 additions and 3651 deletions

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
.DS*

9
.travis.yml Normal file
View File

@ -0,0 +1,9 @@
script: ./dashboards.sh check
deploy:
- provider: script
script: ./dashboards.sh deploy
on:
branch: master
env:
matrix:
secure: "JR1XtNTutuh+z+3gkuvwMV2et2iP9YjqFi1CEUJW1thU0byoSAcoMBev12BqIe6eAwd0Y0JvQ62IX46+lygkGmsAclLHHjnLiwXIIJCfUPKTKV+J2WkV0xs6VbNIfXCrJtYN270UZNUswjyR2zkZpkkylEXitqUc9rWDWbxV/3IXpW4/yjUNK+bEP2ZFot8Gg3jqh/HMLEnCI6nXfdIQjGC2WLxlZSdxM27UMKwMQ+4/j2VQM/c0ZL+M/6rz6KMFlmcMoir4AJezGqghPSYnO3YlRAh2Do/6TZiWxKVAeL2i5akZirwAYEfTNh2no5RpPPHNoM9YB/rJ5fwQ2FSRbR4Xk1H35JsNypuqRD5AvErL6CQDRLGeEPQFhHyZGsBtg0qCwxjnKxIWLZc4Ig3v+MpqCE/mvESS/UIyv8nO9+a+8/ZBpiJIP42vEH3RtHFJMoGf85a00Nf/yU27wbMRMBesnSawmEFSFoo4R1MVjevh0QQjzZt703pVT8JEhZdNYAw/AAdSKmBKQBkPl5XVDQ4Vt+/DQhu7KhD8BQoBhz4BKiT8vZa8WczwCowFADlmKcrXTuoh0SwAuIDgFCayhTPO447yaSXFfZG8wO6RulhzsybiOS+oieaTtWVy1ODX4/bd6BqkksR/UwJ3SNeOeLV1SYU2+vAI8poYRK6the4="

View File

@ -1,3 +1,8 @@
# UniFi Poller Dashboards
...will end up here. Travis-CI will push them to Grafana.com.
[![travis](https://badgen.net/travis/unifi-poller/dashboards?icon=travis&label=build "Travis Build")](https://travis-ci.org/unifi-poller/dashboards)
Dashboards for UniFi Poller live in this repo.
[Shared on Grafana.com](https://grafana.com/grafana/dashboards?search=unifi-poller).
They are deployed to Grafana.com when a change to `master` is detected.

135
dashboards.sh Executable file
View File

@ -0,0 +1,135 @@
#/bin/bash
if [ "$TRAVIS_COMMIT_RANGE" = "" ]; then
echo "this only works in travis-ci"
exit 1
fi
CHANGES=$(git diff --name-only --diff-filter=AM $TRAVIS_COMMIT_RANGE)
echo "CHANGED: $CHANGES"
declare -a DASHMAP
WHERE="v2.0.0/"
# Map of grafana.com public shared dashboard ID to filename.
DASHMAP[11312]="UniFi-Poller_ USW Insights - Prometheus.json"
DASHMAP[10417]="UniFi-Poller_ USW Insights - InfluxDB.json"
DASHMAP[11313]="UniFi-Poller_ USG Insights - Prometheus.json"
DASHMAP[10416]="UniFi-Poller_ USG Insights - InfluxDB.json"
DASHMAP[11314]="UniFi-Poller_ UAP Insights - Prometheus.json"
DASHMAP[10415]="UniFi-Poller_ UAP Insights - InfluxDB.json"
DASHMAP[11311]="UniFi-Poller_ Network Sites - Prometheus.json"
DASHMAP[10414]="UniFi-Poller_ Network Sites - InfluxDB.json"
DASHMAP[11315]="UniFi-Poller_ Client Insights - Prometheus.json"
DASHMAP[10418]="UniFi-Poller_ Client Insights - InfluxDB.json"
DASHMAP[11310]="UniFi-Poller_ Client DPI - Prometheus.json"
DASHMAP[10419]="UniFi-Poller_ Client DPI - InfluxDB.json"
SAVEIFS=$IFS
# unobtainium
IFS=$(echo -en "\n\b")
# Simple function to make sure no stray files got uploaded.
function check {
echo -n "Checking dashboards in: "
pushd "${WHERE}"
local file=""
for file in *; do
local found=0
local i=""
[ "$file" != "README.md" ] || continue
# Check for this file's existence in the DASHMAP variable.
for i in ${!DASHMAP[@]}; do
if [ "${DASHMAP[$i]}" = "$file" ]; then
found=1
echo "found! $file -> $i"
break
fi
done
if [ "$found" = "0" ]; then
echo "uh oh. file not found in DASHMAP: $file"
popd >> /dev/null
exit 2
fi
done
popd >> /dev/null
}
# Simple function to make sure no expected files are missing.
function check2 {
echo -n "Checking file existence in: "
pushd "${WHERE}"
local files=$(ls)
popd >> /dev/null
local i=""
for i in ${!DASHMAP[@]}; do
local found=0
local file=""
for file in $files; do
if [ "${DASHMAP[$i]}" = "$file" ]; then
local found=1
echo "found! $i -> $file"
break
fi
done
if [ "$found" = "0" ]; then
echo "uh oh. configured DASHMAP file missing: ${DASHMAP[$i]}"
exit 2
fi
done
}
# check if a dashboard (or file) has been modified
function isChanged {
local changed=false
local filename=$1
local file=""
for file in $CHANGES; do
if [ "$file" = "$filename" ]; then
local changed=true
break
fi
done
if [ "$changed" = "true" ]; then
true
else
false
fi
}
# Upload all the (changed) dashboards to grafana.com.
function deploy {
local i=""
for i in ${!DASHMAP[@]}; do
isChanged "${WHERE}${DASHMAP[$i]}"
if [ "$?" = "1" ]; then
echo "Not changed (skipping): ${WHERE}${DASHMAP[$i]}"
continue
fi
echo "curl -H \"Content-Type: multipart/form-data\" \
https://grafana.com/api/dashboards/$i/revisions --form \"json=@${WHERE}${DASHMAP[$i]};type=application/json\""
curl -H "Content-Type: multipart/form-data" -H "Authorization: Bearer ${GRAFANA_API_KEY}" \
"https://grafana.com/api/dashboards/$i/revisions" --form "json=@${WHERE}${DASHMAP[$i]};type=application/json"
done
}
if [ "$1" = "deploy" ]; then
deploy
elif [ "$1" = "check" ]; then
check
check2
else
echo "provide command: deploy or check"
exit 1
fi

1
v2.0.0/README.md Normal file
View File

@ -0,0 +1 @@
These are the production dashboards.

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -14,7 +14,7 @@
"type": "grafana",
"id": "grafana",
"name": "Grafana",
"version": "6.5.1"
"version": "6.6.0"
},
{
"type": "panel",
@ -65,7 +65,7 @@
"gnetId": 10414,
"graphTooltip": 1,
"id": null,
"iteration": 1577607789584,
"iteration": 1580615239248,
"links": [
{
"asDropdown": true,
@ -77,6 +77,27 @@
],
"title": "UniFi Poller",
"type": "dashboards"
},
{
"icon": "question",
"tags": [],
"title": "Help",
"type": "link",
"url": "https://golift.io/unifi-poller/issues"
},
{
"icon": "doc",
"tags": [],
"title": "Wiki",
"type": "link",
"url": "https://golift.io/unifi-poller/wiki"
},
{
"icon": "bolt",
"tags": [],
"title": "Discord",
"type": "link",
"url": "https://discord.gg/KnyKYt2"
}
],
"panels": [
@ -599,12 +620,14 @@
"styles": [
{
"alias": "Time",
"align": "auto",
"dateFormat": "YYYY-MM-DD HH:mm:ss",
"pattern": "Time",
"type": "hidden"
},
{
"alias": "",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -621,6 +644,7 @@
},
{
"alias": "",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -1579,6 +1603,7 @@
"styles": [
{
"alias": "Time",
"align": "auto",
"dateFormat": "YYYY-MM-DD HH:mm:ss",
"pattern": "Time",
"type": "hidden"
@ -1724,12 +1749,14 @@
"styles": [
{
"alias": "Time",
"align": "auto",
"dateFormat": "YYYY-MM-DD HH:mm:ss",
"pattern": "Time",
"type": "hidden"
},
{
"alias": "LAN IP",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -2689,12 +2716,14 @@
"styles": [
{
"alias": "Time",
"align": "auto",
"dateFormat": "YYYY-MM-DD HH:mm:ss",
"pattern": "Time",
"type": "hidden"
},
{
"alias": "GW Name",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -2711,6 +2740,7 @@
},
{
"alias": "WAN IP",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -2727,6 +2757,7 @@
},
{
"alias": "",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -3214,6 +3245,190 @@
"align": false,
"alignLevel": null
}
},
{
"aliasColors": {},
"bars": false,
"dashLength": 10,
"dashes": false,
"datasource": "${DS_UNIFI_POLLER}",
"decimals": 0,
"description": "This graph only works if DPI is enabled on the controller and DPI collection is enabled in UniFi Poller. Rx is on the negative axis.",
"fill": 0,
"fillGradient": 0,
"gridPos": {
"h": 15,
"w": 24,
"x": 0,
"y": 30
},
"hiddenSeries": false,
"id": 38,
"legend": {
"alignAsTable": true,
"avg": true,
"current": false,
"hideEmpty": true,
"hideZero": true,
"max": true,
"min": false,
"rightSide": true,
"show": true,
"sort": "current",
"sortDesc": true,
"total": false,
"values": true
},
"lines": true,
"linewidth": 3,
"links": [],
"nullPointMode": "connected",
"options": {
"dataLinks": []
},
"percentage": false,
"pointradius": 2,
"points": false,
"renderer": "flot",
"repeatDirection": "h",
"scopedVars": {
"site": {
"selected": false,
"text": "Home (default)",
"value": "Home (default)"
}
},
"seriesOverrides": [
{
"alias": "/Rx$/",
"transform": "negative-Y"
}
],
"spaceLength": 10,
"stack": false,
"steppedLine": false,
"targets": [
{
"alias": "$tag_category $col",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"category"
],
"type": "tag"
}
],
"measurement": "sitedpi",
"orderByTime": "ASC",
"policy": "default",
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"rx_bytes"
],
"type": "field"
},
{
"params": [],
"type": "sum"
},
{
"params": [
"1s"
],
"type": "non_negative_derivative"
},
{
"params": [
"Bytes Rx"
],
"type": "alias"
}
],
[
{
"params": [
"tx_bytes"
],
"type": "field"
},
{
"params": [],
"type": "sum"
},
{
"params": [
"1s"
],
"type": "non_negative_derivative"
},
{
"params": [
"Bytes Tx"
],
"type": "alias"
}
]
],
"tags": [
{
"key": "site_name",
"operator": "=~",
"value": "/^$site$/"
}
]
}
],
"thresholds": [],
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
"title": "Data Transfer by Category",
"tooltip": {
"shared": true,
"sort": 2,
"value_type": "individual"
},
"type": "graph",
"xaxis": {
"buckets": null,
"mode": "time",
"name": null,
"show": true,
"values": []
},
"yaxes": [
{
"decimals": 0,
"format": "Bps",
"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
}
}
],
"repeat": "site",
@ -3221,7 +3436,7 @@
"type": "row"
}
],
"schemaVersion": 21,
"schemaVersion": 22,
"style": "dark",
"tags": [
"unifi",
@ -3327,5 +3542,5 @@
"timezone": "browser",
"title": "UniFi-Poller: Network Sites - InfluxDB",
"uid": "5_omrT7Zz",
"version": 7
"version": 9
}

View File

@ -20,7 +20,7 @@
"type": "grafana",
"id": "grafana",
"name": "Grafana",
"version": "6.5.1"
"version": "6.6.0"
},
{
"type": "panel",
@ -71,7 +71,7 @@
"gnetId": 11311,
"graphTooltip": 1,
"id": null,
"iteration": 1577607790380,
"iteration": 1580616399315,
"links": [
{
"asDropdown": true,
@ -83,6 +83,27 @@
],
"title": "UniFi Poller",
"type": "dashboards"
},
{
"icon": "question",
"tags": [],
"title": "Help",
"type": "link",
"url": "https://golift.io/unifi-poller/issues"
},
{
"icon": "doc",
"tags": [],
"title": "Wiki",
"type": "link",
"url": "https://golift.io/unifi-poller/wiki"
},
{
"icon": "bolt",
"tags": [],
"title": "Discord",
"type": "link",
"url": "https://discord.gg/KnyKYt2"
}
],
"panels": [
@ -106,8 +127,8 @@
"thresholdMarkers": true
},
"gridPos": {
"h": 3,
"w": 2,
"h": 4,
"w": 3,
"x": 0,
"y": 0
},
@ -164,7 +185,7 @@
"timeShift": null,
"title": "USW",
"type": "singlestat",
"valueFontSize": "80%",
"valueFontSize": "100%",
"valueMaps": [
{
"op": "=",
@ -194,9 +215,9 @@
"thresholdMarkers": true
},
"gridPos": {
"h": 3,
"w": 2,
"x": 2,
"h": 4,
"w": 3,
"x": 3,
"y": 0
},
"id": 42,
@ -252,7 +273,7 @@
"timeShift": null,
"title": "UAP",
"type": "singlestat",
"valueFontSize": "80%",
"valueFontSize": "100%",
"valueMaps": [
{
"op": "=",
@ -282,9 +303,9 @@
"thresholdMarkers": true
},
"gridPos": {
"h": 3,
"w": 2,
"x": 4,
"h": 4,
"w": 3,
"x": 6,
"y": 0
},
"id": 43,
@ -340,7 +361,7 @@
"timeShift": null,
"title": "USG",
"type": "singlestat",
"valueFontSize": "80%",
"valueFontSize": "100%",
"valueMaps": [
{
"op": "=",
@ -370,9 +391,9 @@
"thresholdMarkers": true
},
"gridPos": {
"h": 3,
"w": 2,
"x": 6,
"h": 4,
"w": 3,
"x": 9,
"y": 0
},
"id": 44,
@ -428,7 +449,7 @@
"timeShift": null,
"title": "Stations",
"type": "singlestat",
"valueFontSize": "80%",
"valueFontSize": "100%",
"valueMaps": [
{
"op": "=",
@ -439,12 +460,11 @@
"valueName": "current"
},
{
"content": "Each site contains 5 subsystems: wan, lan, wlan, www, vpn. Each subsystem contains data specific to that system. All subsystems except vpn have data rate. VPN has data transfer though.\nThere's not a ton of juicy info here, and most of it can be gleaned on other the dashboards.\n",
"datasource": "${DS_PROMETHEUS}",
"content": "Each site contains 5 subsystems: wan, lan, wlan, www, vpn. Each subsystem contains data specific to that system. \nAll subsystems except vpn have data rate. VPN has data transfer though.\nThere's not a ton of juicy info here, and most of it can be gleaned on other the dashboards.\nThe row below is purposely collapsed because some installationd have hundreds of sites. \nLoading them all at once is often not possible.\n",
"gridPos": {
"h": 3,
"w": 14,
"x": 8,
"h": 4,
"w": 12,
"x": 12,
"y": 0
},
"id": 37,
@ -458,12 +478,11 @@
},
{
"collapsed": true,
"datasource": "${DS_PROMETHEUS}",
"gridPos": {
"h": 1,
"w": 24,
"x": 0,
"y": 3
"y": 4
},
"id": 4,
"panels": [
@ -490,7 +509,7 @@
"h": 3,
"w": 6,
"x": 0,
"y": 4
"y": 5
},
"id": 40,
"interval": null,
@ -576,7 +595,7 @@
"h": 11,
"w": 18,
"x": 6,
"y": 4
"y": 5
},
"hiddenSeries": false,
"id": 38,
@ -717,7 +736,7 @@
"h": 8,
"w": 3,
"x": 0,
"y": 7
"y": 8
},
"id": 32,
"links": [],
@ -727,6 +746,9 @@
"lastNotNull"
],
"defaults": {
"color": {
"mode": "thresholds"
},
"decimals": 0,
"mappings": [
{
@ -740,31 +762,34 @@
"max": 400,
"min": 10,
"nullValueMode": "connected",
"thresholds": [
{
"color": "#299c46",
"value": null
},
{
"color": "rgba(237, 129, 40, 0.89)",
"value": 100
},
{
"color": "#d44a3a",
"value": 200
}
],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "#299c46",
"value": null
},
{
"color": "rgba(237, 129, 40, 0.89)",
"value": 100
},
{
"color": "#d44a3a",
"value": 200
}
]
},
"title": "Latency",
"unit": "s"
},
"override": {},
"overrides": [],
"values": false
},
"orientation": "horizontal",
"showThresholdLabels": false,
"showThresholdMarkers": true
},
"pluginVersion": "6.5.1",
"pluginVersion": "6.6.0",
"scopedVars": {
"Site": {
"selected": false,
@ -792,7 +817,7 @@
"h": 8,
"w": 3,
"x": 3,
"y": 7
"y": 8
},
"id": 33,
"links": [],
@ -802,6 +827,9 @@
"lastNotNull"
],
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [
{
"id": 0,
@ -814,31 +842,34 @@
"max": 200,
"min": 1,
"nullValueMode": "connected",
"thresholds": [
{
"color": "#299c46",
"value": null
},
{
"color": "rgba(237, 129, 40, 0.89)",
"value": 50
},
{
"color": "#d44a3a",
"value": 100
}
],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "#299c46",
"value": null
},
{
"color": "rgba(237, 129, 40, 0.89)",
"value": 50
},
{
"color": "#d44a3a",
"value": 100
}
]
},
"title": "Speed Test Ping",
"unit": "s"
},
"override": {},
"overrides": [],
"values": false
},
"orientation": "horizontal",
"showThresholdLabels": false,
"showThresholdMarkers": true
},
"pluginVersion": "6.5.1",
"pluginVersion": "6.6.0",
"scopedVars": {
"Site": {
"selected": false,
@ -872,7 +903,7 @@
"h": 8,
"w": 24,
"x": 0,
"y": 15
"y": 16
},
"hiddenSeries": false,
"id": 15,
@ -988,7 +1019,7 @@
"h": 7,
"w": 24,
"x": 0,
"y": 23
"y": 24
},
"hiddenSeries": false,
"id": 2,
@ -1117,7 +1148,7 @@
"h": 7,
"w": 24,
"x": 0,
"y": 30
"y": 31
},
"hiddenSeries": false,
"id": 39,
@ -1232,14 +1263,16 @@
"h": 17,
"w": 24,
"x": 0,
"y": 37
"y": 38
},
"hiddenSeries": false,
"id": 45,
"legend": {
"alignAsTable": true,
"avg": false,
"current": true,
"avg": true,
"current": false,
"hideEmpty": true,
"hideZero": true,
"max": true,
"min": false,
"rightSide": true,
@ -1279,17 +1312,17 @@
"steppedLine": false,
"targets": [
{
"expr": "sum by (category)(rate(unifipoller_site_dpi_receive_bytes{site_name=~\"$Site\"}[$__interval]))",
"expr": "sum by (category) (rate(unifipoller_site_dpi_receive_bytes{site_name=~\"$Site\"}[$__interval]))",
"hide": false,
"interval": "$Smooth",
"legendFormat": "{{category}} Rx",
"refId": "A"
},
{
"expr": "sum by (category)(rate(unifipoller_site_dpi_transmit_bytes{site_name=~\"$Site\"}[$__interval]))",
"expr": "sum by (category) (rate(unifipoller_site_dpi_transmit_bytes{site_name=~\"$Site\"}[$__interval]))",
"hide": false,
"interval": "$Smooth",
"legendFormat": "{{category}} Tx S",
"legendFormat": "{{category}} Tx",
"refId": "B"
}
],
@ -1342,7 +1375,7 @@
}
],
"refresh": "1m",
"schemaVersion": 21,
"schemaVersion": 22,
"style": "dark",
"tags": [
"unifi",
@ -1373,7 +1406,7 @@
"useTags": false
},
{
"allValue": null,
"allValue": ".*",
"current": {},
"datasource": "${DS_PROMETHEUS}",
"definition": "label_values(unifipoller_site_transmit_rate_bytes{source=~\"$Controller\"},site_name)",
@ -1395,7 +1428,7 @@
"useTags": false
},
{
"allValue": null,
"allValue": ".*",
"current": {},
"datasource": "${DS_PROMETHEUS}",
"definition": "label_values(subsystem)",
@ -1435,7 +1468,7 @@
"value": "30s"
},
{
"selected": false,
"selected": true,
"text": "1m",
"value": "1m"
},
@ -1445,7 +1478,7 @@
"value": "2m"
},
{
"selected": true,
"selected": false,
"text": "5m",
"value": "5m"
},
@ -1491,5 +1524,5 @@
"timezone": "browser",
"title": "UniFi-Poller: Network Sites - Prometheus",
"uid": "9WaGWZaZk",
"version": 4
"version": 9
}

File diff suppressed because it is too large Load Diff

View File

@ -14,7 +14,7 @@
"type": "grafana",
"id": "grafana",
"name": "Grafana",
"version": "6.5.1"
"version": "6.6.0"
},
{
"type": "panel",
@ -83,7 +83,7 @@
"gnetId": 11314,
"graphTooltip": 1,
"id": null,
"iteration": 1577607791035,
"iteration": 1580616501060,
"links": [
{
"asDropdown": true,
@ -96,12 +96,32 @@
],
"title": "UniFi Poller",
"type": "dashboards"
},
{
"icon": "question",
"tags": [],
"title": "Help",
"type": "link",
"url": "https://golift.io/unifi-poller/issues"
},
{
"icon": "doc",
"tags": [],
"title": "Wiki",
"type": "link",
"url": "https://golift.io/unifi-poller/wiki"
},
{
"icon": "bolt",
"tags": [],
"title": "Discord",
"type": "link",
"url": "https://discord.gg/KnyKYt2"
}
],
"panels": [
{
"content": "<br>\n<br>\n<center><b><font size=\"6px\">Unifi UAP</font></b></center>\n",
"datasource": "${DS_PROMETHEUS}",
"gridPos": {
"h": 3,
"w": 4,
@ -117,7 +137,11 @@
"type": "text"
},
{
"aliasColors": {},
"aliasColors": {
"Channel 11": "#37872D",
"Channel 36": "#1F60C4",
"Channel 44": "#8F3BB8"
},
"breakPoint": "50%",
"cacheTimeout": null,
"combine": {
@ -157,7 +181,7 @@
"expr": "count by (channel) (unifipoller_client_roam_count_total{site_name=~\"$Site\", ap_name=~\"$AP\"})\n",
"instant": false,
"interval": "$Smooth",
"legendFormat": "Channel {{channel}}",
"legendFormat": "Ch {{channel}}",
"refId": "B"
}
],
@ -168,7 +192,12 @@
"valueName": "current"
},
{
"aliasColors": {},
"aliasColors": {
"ac": "#37872D",
"g": "#E0B400",
"na": "#1F60C4",
"ng": "#8F3BB8"
},
"breakPoint": "25%",
"cacheTimeout": null,
"combine": {
@ -182,7 +211,7 @@
"format": "short",
"gridPos": {
"h": 10,
"w": 6,
"w": 7,
"x": 10,
"y": 0
},
@ -193,6 +222,8 @@
"header": "",
"percentage": true,
"show": true,
"sort": "current",
"sortDesc": true,
"values": true
},
"legendType": "Right side",
@ -204,10 +235,10 @@
"strokeWidth": "3",
"targets": [
{
"expr": "sum by (radio_proto) (unifipoller_client_roam_count_total{site_name=~\"$Site\", ap_name=~\"$AP\"})",
"expr": "count by (radio_desc) (unifipoller_client_uptime_seconds{site_name=~\"$Site\", ap_name=~\"$AP\"})",
"instant": false,
"interval": "$Smooth",
"legendFormat": "{{radio_proto}}",
"legendFormat": "{{radio_desc}}",
"refId": "A"
}
],
@ -232,8 +263,8 @@
"format": "short",
"gridPos": {
"h": 10,
"w": 8,
"x": 16,
"w": 7,
"x": 17,
"y": 0
},
"hideTimeOverride": false,
@ -264,7 +295,7 @@
}
],
"timeFrom": null,
"title": "Client MAC OUI Breakdown",
"title": "Client / MAC OUI",
"transparent": true,
"type": "grafana-piechart-panel",
"valueName": "current"
@ -435,7 +466,6 @@
"endCountdownTime": "2018-04-29T21:47:00.000Z",
"endText": "00:00:00"
},
"datasource": "${DS_PROMETHEUS}",
"dateSettings": {
"dateFormat": "YYYY-MM-DD",
"fontSize": "12px",
@ -498,6 +528,7 @@
"styles": [
{
"alias": "",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -513,6 +544,7 @@
},
{
"alias": "Uptime",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -528,6 +560,7 @@
},
{
"alias": "Name",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -548,6 +581,7 @@
},
{
"alias": "ID",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -558,11 +592,12 @@
"decimals": 2,
"pattern": "id",
"thresholds": [],
"type": "string",
"type": "hidden",
"unit": "short"
},
{
"alias": "Model",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -578,6 +613,7 @@
},
{
"alias": "Device MAC",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -593,6 +629,7 @@
},
{
"alias": "Unifi Serial #",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -608,6 +645,7 @@
},
{
"alias": "Site",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -623,6 +661,7 @@
},
{
"alias": "Version",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -638,6 +677,7 @@
},
{
"alias": "",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -654,6 +694,7 @@
},
{
"alias": "",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -670,6 +711,7 @@
},
{
"alias": "",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -685,7 +727,8 @@
"unit": "short"
},
{
"alias": "IP",
"alias": "Address",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -701,7 +744,8 @@
"unit": "short"
},
{
"alias": "",
"alias": "Type",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -717,7 +761,8 @@
"unit": "short"
},
{
"alias": "Data",
"alias": "Type",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -727,13 +772,14 @@
"dateFormat": "YYYY-MM-DD HH:mm:ss",
"decimals": 2,
"mappingType": 1,
"pattern": "bytes",
"pattern": "type",
"thresholds": [],
"type": "number",
"type": "string",
"unit": "decbytes"
},
{
"alias": "Uptime",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -750,6 +796,7 @@
},
{
"alias": "Controller",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -761,7 +808,24 @@
"mappingType": 1,
"pattern": "source",
"thresholds": [],
"type": "string",
"type": "hidden",
"unit": "short"
},
{
"alias": "",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
"rgba(237, 129, 40, 0.89)",
"rgba(50, 172, 45, 0.97)"
],
"dateFormat": "YYYY-MM-DD HH:mm:ss",
"decimals": 2,
"mappingType": 1,
"pattern": "bytes",
"thresholds": [],
"type": "hidden",
"unit": "short"
}
],
@ -781,6 +845,7 @@
{
"columns": [],
"datasource": "${DS_PROMETHEUS}",
"description": "The counters in this table represent uptime totals and do not change with the time range selector. ",
"editable": true,
"error": false,
"fontSize": "100%",
@ -798,12 +863,13 @@
"scroll": false,
"showHeader": true,
"sort": {
"col": 11,
"col": 15,
"desc": true
},
"styles": [
{
"alias": "",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -817,23 +883,9 @@
"type": "hidden",
"unit": "short"
},
{
"alias": "UAP",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
"rgba(237, 129, 40, 0.89)",
"rgba(50, 172, 45, 0.97)"
],
"dateFormat": "YYYY-MM-DD HH:mm:ss",
"decimals": 2,
"pattern": "device_name",
"thresholds": [],
"type": "string",
"unit": "dtdurations"
},
{
"alias": "BSSID",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -854,6 +906,7 @@
},
{
"alias": "ESSID",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -870,6 +923,7 @@
},
{
"alias": "",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -886,6 +940,7 @@
},
{
"alias": "",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -902,6 +957,7 @@
},
{
"alias": "Serial",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -918,6 +974,7 @@
},
{
"alias": "",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -934,6 +991,7 @@
},
{
"alias": "MAC",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -950,6 +1008,7 @@
},
{
"alias": "Site",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -966,6 +1025,7 @@
},
{
"alias": "VAP",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -982,6 +1042,7 @@
},
{
"alias": "Version",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -998,6 +1059,7 @@
},
{
"alias": "CCQ",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -1007,13 +1069,14 @@
"dateFormat": "YYYY-MM-DD HH:mm:ss",
"decimals": 2,
"mappingType": 1,
"pattern": "Value",
"pattern": "Value #A",
"thresholds": [],
"type": "number",
"unit": "percentunit"
},
{
"alias": "Model",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -1030,6 +1093,7 @@
},
{
"alias": "Name",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -1046,6 +1110,7 @@
},
{
"alias": "",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -1062,6 +1127,7 @@
},
{
"alias": "AP Name",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -1078,6 +1144,7 @@
},
{
"alias": "Usage",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -1094,6 +1161,7 @@
},
{
"alias": "Radio",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
@ -1107,15 +1175,207 @@
"thresholds": [],
"type": "string",
"unit": "short"
},
{
"alias": "Avg Client Sig",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
"rgba(237, 129, 40, 0.89)",
"rgba(50, 172, 45, 0.97)"
],
"dateFormat": "YYYY-MM-DD HH:mm:ss",
"decimals": 0,
"mappingType": 1,
"pattern": "Value #B",
"thresholds": [],
"type": "number",
"unit": "dBm"
},
{
"alias": "Rx Drops",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
"rgba(237, 129, 40, 0.89)",
"rgba(50, 172, 45, 0.97)"
],
"dateFormat": "YYYY-MM-DD HH:mm:ss",
"decimals": null,
"mappingType": 1,
"pattern": "Value #C",
"thresholds": [],
"type": "number",
"unit": "short"
},
{
"alias": "Controller",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
"rgba(237, 129, 40, 0.89)",
"rgba(50, 172, 45, 0.97)"
],
"dateFormat": "YYYY-MM-DD HH:mm:ss",
"decimals": 2,
"mappingType": 1,
"pattern": "source",
"thresholds": [],
"type": "hidden",
"unit": "short"
},
{
"alias": "Tx Drops",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
"rgba(237, 129, 40, 0.89)",
"rgba(50, 172, 45, 0.97)"
],
"dateFormat": "YYYY-MM-DD HH:mm:ss",
"decimals": null,
"mappingType": 1,
"pattern": "Value #E",
"thresholds": [],
"type": "number",
"unit": "short"
},
{
"alias": "Bytes Rx",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
"rgba(237, 129, 40, 0.89)",
"rgba(50, 172, 45, 0.97)"
],
"dateFormat": "YYYY-MM-DD HH:mm:ss",
"decimals": null,
"mappingType": 1,
"pattern": "Value #G",
"thresholds": [],
"type": "number",
"unit": "decbytes"
},
{
"alias": "Bytes Tx",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
"rgba(237, 129, 40, 0.89)",
"rgba(50, 172, 45, 0.97)"
],
"dateFormat": "YYYY-MM-DD HH:mm:ss",
"decimals": null,
"mappingType": 1,
"pattern": "Value #F",
"thresholds": [],
"type": "number",
"unit": "decbytes"
},
{
"alias": "Rx Packets",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
"rgba(237, 129, 40, 0.89)",
"rgba(50, 172, 45, 0.97)"
],
"dateFormat": "YYYY-MM-DD HH:mm:ss",
"decimals": 2,
"mappingType": 1,
"pattern": "Value #H",
"thresholds": [],
"type": "number",
"unit": "short"
},
{
"alias": "Tx Packets",
"align": "auto",
"colorMode": null,
"colors": [
"rgba(245, 54, 54, 0.9)",
"rgba(237, 129, 40, 0.89)",
"rgba(50, 172, 45, 0.97)"
],
"dateFormat": "YYYY-MM-DD HH:mm:ss",
"decimals": 2,
"mappingType": 1,
"pattern": "Value #I",
"thresholds": [],
"type": "number",
"unit": "short"
}
],
"targets": [
{
"expr": "unifipoller_device_vap_ccq_ratio{site_name=~\"$Site\", name=~\"$AP\"}",
"expr": "sum by (bssid,essid,ap_name,name,radio,radio_name,vap_name,site_name,usage,source) (unifipoller_device_vap_ccq_ratio{site_name=~\"$Site\", name=~\"$AP\"})",
"format": "table",
"instant": true,
"interval": "",
"refId": "A"
},
{
"expr": "sum by (bssid,essid,ap_name,name,radio,radio_name,vap_name,site_name,usage,source) (unifipoller_device_vap_average_client_signal{site_name=~\"$Site\", name=~\"$AP\"})",
"format": "table",
"hide": false,
"instant": true,
"interval": "",
"refId": "B"
},
{
"expr": "sum by (bssid,essid,ap_name,name,radio,radio_name,vap_name,site_name,usage,source) (unifipoller_device_vap_receive_dropped_total{site_name=~\"$Site\", name=~\"$AP\"}) ",
"format": "table",
"hide": false,
"instant": true,
"interval": "",
"refId": "C"
},
{
"expr": "sum by (bssid,essid,ap_name,name,radio,radio_name,vap_name,site_name,usage,source) (unifipoller_device_vap_transmit_dropped_total{site_name=~\"$Site\", name=~\"$AP\"}) ",
"format": "table",
"hide": false,
"instant": true,
"interval": "",
"refId": "E"
},
{
"expr": "sum by (bssid,essid,ap_name,name,radio,radio_name,vap_name,site_name,usage,source) (unifipoller_device_vap_transmit_bytes_total{site_name=~\"$Site\", name=~\"$AP\"}) ",
"format": "table",
"hide": false,
"instant": true,
"interval": "",
"refId": "F"
},
{
"expr": "sum by (bssid,essid,ap_name,name,radio,radio_name,vap_name,site_name,usage,source) (unifipoller_device_vap_receive_bytes_total{site_name=~\"$Site\", name=~\"$AP\"}) ",
"format": "table",
"hide": false,
"instant": true,
"interval": "",
"refId": "G"
},
{
"expr": "sum by (bssid,essid,ap_name,name,radio,radio_name,vap_name,site_name,usage,source) (unifipoller_device_vap_receive_packets_total{site_name=~\"$Site\", name=~\"$AP\"}) ",
"format": "table",
"hide": false,
"instant": true,
"interval": "",
"refId": "H"
},
{
"expr": "sum by (bssid,essid,ap_name,name,radio,radio_name,vap_name,site_name,usage,source) (unifipoller_device_vap_transmit_packets_total{site_name=~\"$Site\", name=~\"$AP\"}) ",
"format": "table",
"hide": false,
"instant": true,
"interval": "",
"refId": "I"
}
],
"timeFrom": null,
@ -1125,7 +1385,10 @@
"type": "table"
},
{
"aliasColors": {},
"aliasColors": {
"wap-lower": "dark-green",
"wap-upper": "dark-purple"
},
"bars": false,
"cacheTimeout": null,
"dashLength": 10,
@ -1219,7 +1482,10 @@
}
},
{
"aliasColors": {},
"aliasColors": {
"wap-lower": "dark-green",
"wap-upper": "dark-purple"
},
"bars": false,
"cacheTimeout": null,
"dashLength": 10,
@ -1313,7 +1579,12 @@
}
},
{
"aliasColors": {},
"aliasColors": {
"wap-lower load1": "dark-green",
"wap-lower load15": "dark-blue",
"wap-upper load1": "dark-purple",
"wap-upper load15": "dark-yellow"
},
"bars": false,
"dashLength": 10,
"dashes": false,
@ -1332,9 +1603,11 @@
"id": 3,
"isNew": true,
"legend": {
"alignAsTable": true,
"alignAsTable": false,
"avg": false,
"current": true,
"current": false,
"hideEmpty": true,
"hideZero": true,
"max": true,
"min": false,
"show": true,
@ -1374,6 +1647,7 @@
},
{
"expr": "unifipoller_device_load_average_5{site_name=~\"$Site\",name=~\"$AP\"}",
"hide": true,
"interval": "$Smooth",
"legendFormat": "{{name}} load5",
"refId": "B"
@ -1660,7 +1934,7 @@
"avg": false,
"current": true,
"hideEmpty": true,
"hideZero": false,
"hideZero": true,
"max": true,
"min": true,
"rightSide": true,
@ -2849,7 +3123,7 @@
"lines": true,
"linewidth": 1,
"links": [],
"nullPointMode": "null",
"nullPointMode": "connected",
"options": {
"dataLinks": []
},
@ -3111,7 +3385,7 @@
}
],
"refresh": "1m",
"schemaVersion": 21,
"schemaVersion": 22,
"style": "dark",
"tags": [
"unifi",
@ -3121,7 +3395,7 @@
"templating": {
"list": [
{
"allValue": null,
"allValue": ".*",
"current": {},
"datasource": "${DS_PROMETHEUS}",
"definition": "label_values(unifipoller_device_info{type=\"uap\"},source)",
@ -3143,7 +3417,7 @@
"useTags": false
},
{
"allValue": null,
"allValue": "",
"current": {},
"datasource": "${DS_PROMETHEUS}",
"definition": "label_values(unifipoller_device_info{source=~\"$Controller\", type=\"uap\"},site_name)",
@ -3165,7 +3439,7 @@
"useTags": false
},
{
"allValue": null,
"allValue": "",
"current": {},
"datasource": "${DS_PROMETHEUS}",
"definition": "label_values(unifipoller_device_info{site_name=~\"$Site\", type=~\"uap|udm\",model!=\"UDMPRO\"},name)",
@ -3277,5 +3551,5 @@
"timezone": "browser",
"title": "UniFi-Poller: UAP Insights - Prometheus",
"uid": "g5wFWqxZk",
"version": 5
"version": 19
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff