Author SHA1 Message Date
oleksandr 306da7e003 feat(k8s/podsync): add Renovate config and pin image tag 2026-09-11 15:12:44 +03:00
oleksandr e7ea4b8956 feat(k8s/firefly): add Renovate config and pin image tag 2026-09-11 15:12:43 +03:00
oleksandr ed0b0147e3 feat(k8s/lubelogger): add Renovate config for automated patch/minor updates 2026-09-11 15:12:42 +03:00
oleksandr a0268ecb6f feat(k8s/paperless): add Renovate config for automated patch/minor updates 2026-09-11 15:12:41 +03:00
oleksandr 62bbbbd652 feat(k8s/vikunja): add Renovate config for automated patch/minor updates 2026-09-11 15:12:41 +03:00
oleksandr 67f92d8b23 feat(k8s/homepage): add Renovate config for automated patch/minor updates 2026-09-11 15:12:40 +03:00
renovate f46134f606 chore(k8s/immich): update dependency immich-app/immich to v3.2.0 2026-09-10 18:00:21 +00:00
oleksandr 93b9f6495f feat(k8s/vikunja): deploy Vikunja with Authelia OIDC and restic backups 2026-09-07 15:01:46 +03:00
renovate 72fd37d82d chore(k8s/gitea): update gitea/gitea docker tag to v1.27.3 2026-08-29 18:00:44 +00:00
oleksandr b07a1de547 feat(k8s/infrastructure/authelia): update configuration 2026-08-19 22:17:42 +03:00
renovate cb4460e79a chore(k8s/gitea): update gitea/gitea docker tag to v1.27.2 2026-08-14 00:01:13 +00:00
renovate a37ff99cc7 chore(k8s/media): update dependency seerr-team/seerr to v3.4.1 2026-07-30 12:01:24 +00:00
renovate 9462186e5f chore(k8s/immich): update dependency immich-app/immich to v3.1.0 2026-07-29 18:01:18 +00:00
renovate 8059ce011f chore(k8s/media): update dependency seerr-team/seerr to v3.4.0 2026-07-28 06:00:59 +00:00
renovate 12955f6fa8 chore(k8s/gitea): update gitea/gitea docker tag to v1.27.1 2026-07-28 00:01:09 +00:00
renovate d07650835f chore(k8s/media): update lscr.io/linuxserver/prowlarr docker tag to v2.5.2 2026-07-24 18:00:51 +00:00
renovate 50d4938b75 chore(k8s/immich): update dependency immich-app/immich to v3.0.3 2026-07-15 18:00:46 +00:00
renovate 98d8ea6a96 chore(k8s/media): update lscr.io/linuxserver/radarr docker tag to v6.3.0 2026-07-13 18:01:15 +00:00
renovate 96db8497cd chore(k8s/gitea): update gitea/gitea docker tag to v1.27.0 2026-07-13 18:00:48 +00:00
renovate 106bd3c581 chore(k8s/immich): update dependency immich-app/immich to v3.0.2 2026-07-10 00:00:51 +00:00
renovate a0223ae5e9 chore(k8s/media): update lscr.io/linuxserver/qbittorrent docker tag to v5.2.3 2026-07-08 12:01:11 +00:00
renovate 508a4e51a5 chore(k8s/immich): update dependency immich-app/immich to v3.0.1 2026-07-03 00:00:42 +00:00
renovate 27c23b2430 chore(k8s/immich): update dependency immich-app/immich to v3 2026-07-02 17:43:37 +00:00
oleksandr 60e9ab39d5 feat(mon/synology): add Grafana dashboard + full-coverage snmp.yml 2026-06-29 15:12:28 +03:00
oleksandr 2a7c0030ff feat(mon/synology): scrape DS1821+ via snmp_exporter 2026-06-29 14:58:06 +03:00
oleksandr 58ad6f1162 feat(mon/hyperhdr): scrape node exporter metrics 2026-06-28 15:43:07 +03:00
oleksandr 1c28249258 feat(mon/coreelec): scrape node exporter metrics 2026-06-28 15:40:09 +03:00
renovate a49c3b813f chore(k8s/media): update lscr.io/linuxserver/sonarr docker tag to v4.0.19 2026-06-27 00:01:22 +00:00
renovate c8a5f35f95 chore(k8s/media): update lscr.io/linuxserver/sonarr docker tag to v4.0.18 2026-06-25 00:01:27 +00:00
oleksandr 247eebc63e fix(podsync): enable yt-dlp self_update to fix SABR streaming errors 2026-06-22 22:20:14 +03:00
renovate 0b4826b08a chore(k8s/gitea): update gitea/gitea docker tag to v1.26.4 2026-06-21 18:00:45 +00:00
renovate 558afaf5d0 chore(k8s/gitea): update gitea/gitea docker tag to v1.26.3 2026-06-21 00:01:15 +00:00
oleksandr bf2077b19c feat(mon/homeassistant): scrape Home Assistant Prometheus metrics 2026-06-20 11:30:27 +03:00
oleksandr 8783bc086a feat(mon/unpoller): scrape UniFi controller metrics into Grafana 2026-06-19 21:31:02 +03:00
oleksandr 1d24966003 feat(monitoring): victoria-logs syslog listener for unifi 2026-06-19 17:35:09 +03:00
oleksandr 77ac732143 feat(mon/victoria-logs): enable bundled Grafana dashboards 2026-06-19 15:27:39 +03:00
oleksandr bd3b1eb18d feat(mon/grafana): install victoriametrics-metrics-datasource plugin 2026-06-19 15:23:36 +03:00
oleksandr 4dcdcd0017 refactor(mon): rename victoria-metrics app dir to monitoring 2026-06-19 15:18:53 +03:00
oleksandr 82b3c68597 fix(mon/grafana): use Recreate strategy and disable initChownData 2026-06-19 15:15:12 +03:00
oleksandr 268fa1c5af feat(mon/victoria-logs): add log storage with Grafana datasource 2026-06-19 15:09:38 +03:00
oleksandr 74b85e0f42 feat(mon/victoria-metrics): add metrics, alerting and Grafana stack 2026-06-19 14:50:01 +03:00
Flux bec94d64a4 Add Flux sync manifests 2026-06-19 14:31:05 +03:00
Flux e42d35e016 Add Flux v2.8.8 component manifests 2026-06-19 14:31:02 +03:00
renovate 24248d4186 chore(k8s/media): update lscr.io/linuxserver/qbittorrent docker tag to v5.2.2 2026-06-16 12:01:03 +00:00
renovate fde96ef9d0 chore(k8s/media): update lscr.io/linuxserver/radarr docker tag to v6.2.1 2026-06-11 18:01:19 +00:00
renovate a27ef8c1d8 chore(k8s/media): update lscr.io/linuxserver/prowlarr docker tag to v2.4.0 2026-06-11 18:01:01 +00:00
renovate 31b9091263 chore(k8s/jellyfin): update jellyfin/jellyfin docker tag to v10.11.11 2026-06-06 18:00:32 +00:00
renovate eb79961993 chore(k8s/media): update dependency seerr-team/seerr to v3.3.0 2026-06-02 12:01:48 +00:00
renovate aa3ef41304 chore(k8s/media): update lscr.io/linuxserver/qbittorrent docker tag to v5.2.1 2026-05-26 06:00:46 +00:00
renovate 7095e75193 chore(k8s/jellyfin): update jellyfin/jellyfin docker tag to v10.11.10 2026-05-25 00:01:02 +00:00
renovate 0c6f9776dc chore(k8s/jellyfin): update jellyfin/jellyfin docker tag to v10.11.9 2026-05-21 06:00:51 +00:00
renovate 0d9a565c3a chore(k8s/gitea): update gitea/gitea docker tag to v1.26.2 2026-05-21 00:01:13 +00:00
oleksandr 5b59c0758d fix(k8s/blog): use relative redirects in nginx 2026-05-17 17:18:44 +03:00
oleksandr d3f0714bc7 fix(k8s/authelia): pin redis chart to 25.5.3 2026-05-12 21:56:59 +03:00
oleksandr 2bd0f29ac6 feat(k8s/gitea): add renovate support 2026-05-12 01:29:19 +03:00
69 changed files with 20566 additions and 39 deletions
+3 -1
View File
@@ -38,7 +38,8 @@ homelab-v2/
│ ├── media/
│ ├── paperless/
│ ├── pihole/
│ └── podsync/
│ ├── podsync/
│ └── vikunja/
└── docs/
└── k8s-service-spec.md
```
@@ -60,6 +61,7 @@ homelab-v2/
| **Podsync** | Podcast downloader |
| **Archmirror** | Local Arch Linux package repository mirror |
| **Blog** | Personal static blog served via git-sync + nginx (gh-pages branch) |
| **Vikunja** | To-do list and task management, SSO via Authelia OIDC |
## Infrastructure Stack
+4
View File
@@ -0,0 +1,4 @@
creation_rules:
- path_regex: .*\.sops\.yaml
encrypted_regex: "^(data|stringData|email)$"
age: age1jetw4h63gq4uzyk08znynw4h852nexdmtkdz4kwxj5ew5st32vnspmtag2
@@ -0,0 +1,19 @@
apiVersion: operator.victoriametrics.com/v1beta1
kind: VMStaticScrape
metadata:
name: coreelec
namespace: monitoring
labels:
app.kubernetes.io/name: coreelec
spec:
jobName: coreelec
targetEndpoints:
- targets:
- "coreelec.iot.lviv:9100"
scheme: http
path: /metrics
interval: 60s
scrapeTimeout: 10s
relabelConfigs:
- targetLabel: instance
replacement: coreelec
@@ -0,0 +1,23 @@
apiVersion: v1
kind: Secret
metadata:
name: homeassistant-prometheus
namespace: monitoring
type: Opaque
stringData:
token: ENC[AES256_GCM,data:0+65oM4/ICURAcNcp4c/W1r3fO8GgkPrZgpFGk1rYQF5mSTk8Mu/DrG6TZ6sULQ1otQOdcW/6DtFYZc4xfL29cirZF/XZUfyIm7ENSdMYM1hh3lYhbi9HC/rTXyBP2F9HCIHqVsuNC024WHq/YNNwWhaGScs1mV7yZWtbv+Dqq6Mg6p9iFBzZk+pQ+hJGzO+XUNrXlKYjjsxkLPKSyf9STqIQ4Bzx5B0MwsVfhIwh8NoedTW39cO,iv:8BFLgfE4hs+vYcr3FcGhPZBjJKIamqG3e0f12PngOVY=,tag:L7VGNV+MjfHxPusVPit7Ww==,type:str]
sops:
age:
- enc: |
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBnZXZ4enk0UVZpRTVnVnhL
UnNUTWFiWkczT0d0M1FvK3hnenhqMzYwWURFCjlJU3E0R2NXWFU0d0ppRjI0WXd5
djQ0d2VQQXI5bFp4YmhBU040V3JvbGsKLS0tIG1TKyt5SmVraTVMSFUxODdLTXlL
MDNXVDJMa3ZWMzJZQlVrYnN6dnJVYVkKIbBebz4SiKgwL+TI6k2l6p3r+99wc6e9
LZpX9jtVZtIYKyQDlWsEXz6cEzBh2IQyoLS8RYFWG2eYpN15fvIu7w==
-----END AGE ENCRYPTED FILE-----
recipient: age1jetw4h63gq4uzyk08znynw4h852nexdmtkdz4kwxj5ew5st32vnspmtag2
encrypted_regex: ^(data|stringData|email)$
lastmodified: "2026-06-20T08:26:05Z"
mac: ENC[AES256_GCM,data:tyKGTUZHUd5CTxOH/vkDSxAXast6w5moVPxQWh54d/xOqasKw+fcFOzuYq81TgBRagM5BKHT3EqF1B7dr0TRZnT8s+LjwivWGfDCBoDFVtCnX3vA+mgIWaN/12fR3WJ4+dgpvoMwR4sFGFbvN6tozyDA6dPOYzOpOOM/VJxbdDw=,iv:VLu8bborH6YLoriseWympgJCNV08MZqVz7rF1/+o6BQ=,tag:PQkphKrdkNVsWipo6ge/bw==,type:str]
version: 3.13.1
@@ -0,0 +1,22 @@
apiVersion: operator.victoriametrics.com/v1beta1
kind: VMStaticScrape
metadata:
name: homeassistant
namespace: monitoring
labels:
app.kubernetes.io/name: homeassistant
spec:
jobName: homeassistant
targetEndpoints:
- targets:
- "http://homeassistant.iot.lviv:8123"
scheme: http
path: /api/prometheus
interval: 60s
scrapeTimeout: 30s
bearerTokenSecret:
name: homeassistant-prometheus
key: token
relabelConfigs:
- targetLabel: instance
replacement: homeassistant
@@ -0,0 +1,19 @@
apiVersion: operator.victoriametrics.com/v1beta1
kind: VMStaticScrape
metadata:
name: hyperhdr
namespace: monitoring
labels:
app.kubernetes.io/name: hyperhdr
spec:
jobName: hyperhdr
targetEndpoints:
- targets:
- "hyperhdr.iot.lviv:9100"
scheme: http
path: /metrics
interval: 60s
scrapeTimeout: 10s
relabelConfigs:
- targetLabel: instance
replacement: hyperhdr
+17
View File
@@ -0,0 +1,17 @@
---
apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: apps
namespace: flux-system
spec:
interval: 10m
path: ./kubernetes-monitoring/apps
prune: true
sourceRef:
kind: GitRepository
name: flux-system
decryption:
provider: sops
secretRef:
name: sops-age
@@ -0,0 +1,17 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: victoria-logs-grafana-datasource
namespace: monitoring
labels:
# Picked up automatically by the Grafana datasource sidecar (vmstack chart).
grafana_datasource: "1"
data:
victoria-logs-datasource.yaml: |
apiVersion: 1
datasources:
- name: VictoriaLogs
type: victoriametrics-logs-datasource
access: proxy
url: http://victoria-logs.monitoring.svc:9428
isDefault: false
@@ -0,0 +1,4 @@
apiVersion: v1
kind: Namespace
metadata:
name: monitoring
@@ -0,0 +1,57 @@
apiVersion: helm.toolkit.fluxcd.io/v2
kind: HelmRelease
metadata:
name: victoria-logs-single
namespace: flux-system
spec:
chart:
spec:
chart: victoria-logs-single
version: 0.13.8
reconcileStrategy: ChartVersion
sourceRef:
kind: HelmRepository
name: victoria-metrics
namespace: flux-system
targetNamespace: monitoring
interval: 30m
install:
remediation:
retries: 3
upgrade:
remediation:
retries: 3
values:
server:
fullnameOverride: victoria-logs
retentionPeriod: "30d"
persistentVolume:
enabled: true
storageClassName: local-path
size: 20Gi
# NodePort so an external Alloy (e.g. the Talos DaemonSet) can push logs
# by IP, independent of DNS. In-cluster Grafana uses the ClusterIP DNS name.
service:
type: NodePort
nodePort: 30429
clusterIP: ""
syslog:
udp:
- name: syslog-udp
value: ":514"
useRemoteIP: true
useLocalTimestamp: true
resources:
requests:
cpu: 50m
memory: 128Mi
limits:
memory: 512Mi
# Ship the chart's dashboards (victorialogs-single-node, vector-k8s-monitoring)
# as ConfigMaps; the grafana_dashboard label makes the vmstack Grafana
# dashboard sidecar import them automatically.
dashboards:
enabled: true
labels:
grafana_dashboard: "1"
@@ -0,0 +1,97 @@
apiVersion: helm.toolkit.fluxcd.io/v2
kind: HelmRelease
metadata:
name: victoria-metrics-k8s-stack
namespace: flux-system
spec:
chart:
spec:
chart: victoria-metrics-k8s-stack
version: 0.84.0
reconcileStrategy: ChartVersion
sourceRef:
kind: HelmRepository
name: victoria-metrics
namespace: flux-system
targetNamespace: monitoring
interval: 30m
install:
remediation:
retries: 3
upgrade:
remediation:
retries: 3
values:
# Operator bundles the VictoriaMetrics CRDs (plain manifests, applied by Flux SSA).
victoria-metrics-operator:
enabled: true
crds:
plain: true
# Single-node TSDB. NodePort so the in-cluster Talos vmagent can remote_write
# and we can reach it by IP even when DNS (pihole on Talos) is down.
vmsingle:
enabled: true
spec:
retentionPeriod: "12" # months — VM is very space-efficient
storage:
accessModes:
- ReadWriteOnce
storageClassName: local-path
resources:
requests:
storage: 30Gi
serviceSpec:
useAsDefault: true
spec:
type: NodePort
ports:
- name: http
port: 8428
targetPort: 8428
protocol: TCP
nodePort: 30428
# Local scrape of the Pi/k3s itself (node-exporter, kube-state-metrics, kubelet).
vmagent:
enabled: true
vmalert:
enabled: true
# Telegram + email wired later (see monitoring-rpi5-setup.md step 11).
# Default config uses a blackhole receiver until then.
alertmanager:
enabled: true
grafana:
enabled: true
# SQLite DB on an RWO local-path volume — never run two pods at once.
deploymentStrategy:
type: Recreate
# The volume already carries fsGroup: 472 and 472-owned data; the chown
# init container drops DAC_OVERRIDE and can't traverse Grafana's 0700
# render dirs, so it's both redundant and breaks rollouts here.
initChownData:
enabled: false
# Native VictoriaMetrics datasource plugins (signed, from Grafana catalog).
# - metrics: backs the "VictoriaMetrics (DS)" datasource the chart
# provisions by default (defaultDatasources.victoriametrics) — MetricsQL.
# - logs: backs our VictoriaLogs datasource (configmap-logs-datasource.yaml).
plugins:
- victoriametrics-metrics-datasource
- victoriametrics-logs-datasource
# Native Grafana login — independent of Authelia (which lives in Talos).
admin:
existingSecret: grafana-admin
userKey: admin-user
passwordKey: admin-password
persistence:
enabled: true
type: pvc
storageClassName: local-path
size: 5Gi
# NodePort so Grafana is reachable by IP without depending on DNS.
service:
type: NodePort
nodePort: 30300
@@ -0,0 +1,8 @@
apiVersion: source.toolkit.fluxcd.io/v1
kind: HelmRepository
metadata:
name: victoria-metrics
namespace: flux-system
spec:
interval: 1h
url: https://victoriametrics.github.io/helm-charts/
@@ -0,0 +1,23 @@
apiVersion: v1
kind: Secret
metadata:
name: grafana-admin
namespace: monitoring
stringData:
admin-user: ENC[AES256_GCM,data:KDBvi5I=,iv:tNHZ9IABD5l210PTjKhN+q4vMnmJLAP99fzzONpwwxg=,tag:YU62qttxO95+P1VlpVn0qA==,type:str]
admin-password: ENC[AES256_GCM,data:HjZYVYs2t6Oml52fjFS2PymFvp1GXRAJXCewxA==,iv:LK1Yf0teLPITo2pK4lAaeub3Ieyl90uRrZeBD3LXy2o=,tag:7I8fT/SSzU7JkcreNlI8rw==,type:str]
sops:
age:
- enc: |
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBobmoydk9FaHFkQXEzQU03
YnZ4RjlxVk40dkk5RGFya0Foeit1dEpWRkdZCmJ4M3pxcHl1S1FUTnlGbEtEeXJT
ZDN4c0dPYktwTXgveExQUWFsYlEwTmsKLS0tIElmTDNCM2dRR3VtRGRpeHVCSXVl
ckV1N3h1bmlOdjhnRXRZNExJank5Q2MKMsA6BkdzOrTQUN0uPSUQSa9aYLil2Chb
vjpFp1j6x9EwvKHLY7mry15ze7gjUtUt8e97zO9ZlturiPigl0jeoQ==
-----END AGE ENCRYPTED FILE-----
recipient: age1jetw4h63gq4uzyk08znynw4h852nexdmtkdz4kwxj5ew5st32vnspmtag2
encrypted_regex: ^(data|stringData|email)$
lastmodified: "2026-06-19T11:46:25Z"
mac: ENC[AES256_GCM,data:h7Bei7jgHb4dFIk6Vax8fL7uA0zlqLUtpQgYTNx7i+yssAXcKEr989WgbLqQY8Rx1BSj27rFHv2Y4P+K2ump+J930lZIe1NNBNiFnYbI2vN0TYrlVOAETk6c0DoqygG7Mmlq+kCGGml4A+4XuQcCA4ZYzBYE4QvGq/WS6bOCFXI=,iv:zE3GhfkvJl5Z4klGWHgw7iZmxOff+Mlf7aXtMWTKUEs=,tag:q0mxhLxK2SIujVa+mhiKVw==,type:str]
version: 3.13.1
@@ -0,0 +1,18 @@
apiVersion: v1
kind: Service
metadata:
name: victoria-logs-syslog
namespace: monitoring
spec:
type: NodePort
externalTrafficPolicy: Local
selector:
app: server
app.kubernetes.io/instance: monitoring-victoria-logs-single
app.kubernetes.io/name: victoria-logs-single
ports:
- name: syslog-udp
protocol: UDP
port: 514
targetPort: 514
nodePort: 30514
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,76 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: snmp-exporter
namespace: monitoring
labels:
app.kubernetes.io/name: snmp-exporter
app.kubernetes.io/instance: snmp-exporter
spec:
replicas: 1
selector:
matchLabels:
app.kubernetes.io/name: snmp-exporter
template:
metadata:
labels:
app.kubernetes.io/name: snmp-exporter
app.kubernetes.io/instance: snmp-exporter
spec:
securityContext:
runAsNonRoot: true
runAsUser: 65534
runAsGroup: 65534
seccompProfile:
type: RuntimeDefault
containers:
- name: snmp-exporter
image: quay.io/prometheus/snmp-exporter:v0.30.1
args:
# Vendored snmp.yml (configmap) — `synology` module with full coverage
# (Synology private trees + IF-MIB + HOST-RESOURCES + UCD), matched to the dashboard.
- "--config.file=/etc/snmp-config/snmp.yml"
# Our SNMPv3 credentials; snmp_exporter merges multiple --config.file flags.
- "--config.file=/etc/snmp-auth/auth.yml"
ports:
- name: metrics
containerPort: 9116
protocol: TCP
volumeMounts:
- name: config
mountPath: /etc/snmp-config
readOnly: true
- name: auth
mountPath: /etc/snmp-auth
readOnly: true
readinessProbe:
httpGet:
path: /
port: metrics
initialDelaySeconds: 5
periodSeconds: 15
livenessProbe:
httpGet:
path: /
port: metrics
initialDelaySeconds: 15
periodSeconds: 30
securityContext:
allowPrivilegeEscalation: false
readOnlyRootFilesystem: true
capabilities:
drop:
- ALL
resources:
requests:
cpu: 50m
memory: 64Mi
limits:
memory: 128Mi
volumes:
- name: config
configMap:
name: snmp-exporter-config
- name: auth
secret:
secretName: snmp-exporter-auth
@@ -0,0 +1,23 @@
apiVersion: v1
kind: Secret
metadata:
name: snmp-exporter-auth
namespace: monitoring
type: Opaque
stringData:
auth.yml: ENC[AES256_GCM,data:/UESrSn3ezINnFou7hiXYrqECjStumoIXBQm2q9Gxe9QaCg5AI5dl+ZNAgo+1YIrQbf1BrQgZttXjSAMn+Rf6nDhOEu44i1AbbZKXT6bm3fzuEzPcT5EIf5BQuGpnwXmpy3Gh+5Zi/fs0xO/cSlIiEkagNV7BO40Nl9ktUt4zKyW9GI/zf/T4iTUTlLWqSogDBE59gnBXa9fvNuHx8jIufpzhnnk65keoybEewW3/00Sa9Q+J31VvQ/w3DC205aad1njU8PIP5jPAn97pQeSZPY9iNNexxpb0+5IdSHpcKlT1aEigR8TqYc/,iv:4D6jFm9mA9BglHqsvTrrYxtYus1JWmCWEu0HQALET+4=,tag:It3uGYRvYPCL4+xvFo7P0A==,type:str]
sops:
age:
- enc: |
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBzdUFHTFFjMXpzbFAyN00x
N0FrRHJnT2ljYThUcndHNGIyK1RJOWp5Z3c0CnFNQzkzZk5NWDgwN3ZiRTBjYU9S
SFpkTmJkM2VLbEJzZEtxYy9DVFB6OXcKLS0tIFZzWTZNOFNXRzdERGFWanZTYkp1
R2dvMmhBTjQyOS85UzIxYlN0Wm8wU1EKmWA+lkDNqzpyqEd+PpI6PDi9L/Vlp1RP
Y6WVvvOi9OKc4UaDxXVSEgLlA3DNBg2BaY2jEhMJlqLJyknHY4un0g==
-----END AGE ENCRYPTED FILE-----
recipient: age1jetw4h63gq4uzyk08znynw4h852nexdmtkdz4kwxj5ew5st32vnspmtag2
encrypted_regex: ^(data|stringData|email)$
lastmodified: "2026-06-29T11:52:50Z"
mac: ENC[AES256_GCM,data:/zoY3ZS7ipOjt1YY2OQ5SCRITX9WXI+BXmrmlRfoJ9M+lJHomgbTkdqu70jcgYXTm/ARlTMrMrk3zCQqPBPc9bYbz7wXh8o0PLyCUQ1ccSGR5hWjywsRjm7nfM25p0UYvEllj+KywRnY7ArbJvzGcLYEtHmUvuyRs2HG5Tv7KnM=,iv:je3IVh8HpLzRGToU5Znuq49K2H+hxEM94WCP1c39mjg=,tag:sf6USL4a2/vZXQT7eMerBA==,type:str]
version: 3.13.1
@@ -0,0 +1,17 @@
apiVersion: v1
kind: Service
metadata:
name: snmp-exporter
namespace: monitoring
labels:
app.kubernetes.io/name: snmp-exporter
app.kubernetes.io/instance: snmp-exporter
spec:
type: ClusterIP
selector:
app.kubernetes.io/name: snmp-exporter
ports:
- name: metrics
port: 9116
targetPort: metrics
protocol: TCP
@@ -0,0 +1,31 @@
apiVersion: operator.victoriametrics.com/v1beta1
kind: VMStaticScrape
metadata:
name: synology
namespace: monitoring
labels:
app.kubernetes.io/name: snmp-exporter
spec:
jobName: synology
targetEndpoints:
# snmp_exporter is a proxy: vmagent scrapes the exporter, which then queries
# the NAS over SNMP. The device address is passed as the `target` param and
# the request is redirected to the exporter Service via relabeling below.
- targets:
- "synology.storage.lviv"
scheme: http
path: /snmp
params:
module:
- synology
auth:
- synology_v3
interval: 60s
scrapeTimeout: 30s
relabelConfigs:
- sourceLabels: [__address__]
targetLabel: __param_target
- sourceLabels: [__param_target]
targetLabel: instance
- targetLabel: __address__
replacement: snmp-exporter.monitoring.svc:9116
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,253 @@
apiVersion: v1
data:
client-insights.json: '{"annotations":{"list":[{"builtIn":1,"datasource":"-- Grafana
--","enable":true,"hide":true,"iconColor":"rgba(0, 211, 255, 1)","name":"Annotations
& Alerts","type":"dashboard"}]},"description":"UniFi Poller v2.0.1 Displays detailed
information for clients in a UniFi network using Prometheus.","editable":true,"gnetId":11315,"graphTooltip":1,"id":null,"iteration":1592125485014,"links":[{"asDropdown":true,"icon":"external
link","includeVars":false,"keepTime":true,"tags":["unifi-poller"],"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":[{"columns":[],"datasource":"VictoriaMetrics","description":"This
table represents current (latest) data.\nBytes columns are lifetime totals.","fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fontSize":"80%","gridPos":{"h":13,"w":24,"x":0,"y":0},"id":21,"links":[],"pageSize":null,"scroll":true,"showHeader":true,"sort":{"col":9,"desc":true},"styles":[{"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
#A","thresholds":[],"type":"number","unit":"decbytes"},{"alias":"Name","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":"name","thresholds":[],"type":"string","unit":"short"},{"alias":"Chan","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":"channel","thresholds":[],"type":"string","unit":"short"},{"alias":"Device
MAC","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":"mac","thresholds":[],"type":"string","unit":"short"},{"alias":"Radio","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":"radio","thresholds":[],"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":"radio_name","thresholds":[],"type":"hidden","unit":"short"},{"alias":"AP
/ Radio / Proto","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":"radio_desc","thresholds":[],"type":"string","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":"radio_proto","thresholds":[],"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":"job","thresholds":[],"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":"bssid","thresholds":[],"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":"ap_mac","thresholds":[],"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":"Time","thresholds":[],"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":"wired","thresholds":[],"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":"vlan","thresholds":[],"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":"sw_mac","thresholds":[],"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":"instance","thresholds":[],"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":"gw_mac","thresholds":[],"type":"hidden","unit":"short"},{"alias":"Network","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":"network","thresholds":[],"type":"string","unit":"short"},{"alias":"OUI","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":"oui","thresholds":[],"type":"string","unit":"short"},{"alias":"Address","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":"ip","thresholds":[],"type":"string","unit":"short"},{"alias":"ESSID","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":"essid","thresholds":[],"type":"string","unit":"short"},{"alias":"Switch","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":"sw_name","thresholds":[],"type":"hidden","unit":"short"},{"alias":"Sw
Port","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":"sw_port","thresholds":[],"type":"hidden","unit":"short"},{"alias":"Site","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":"site_name","thresholds":[],"type":"string","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":"gw_name","thresholds":[],"type":"hidden","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":"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
#B","thresholds":[],"type":"number","unit":"decbytes"},{"alias":"Uptime","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 #C","thresholds":[],"type":"number","unit":"s"}],"targets":[{"expr":"sum
by (channel,essid,ip,mac,name,network,oui,radio_desc,site_name,source) (\n unpoller_client_receive_bytes_total{wired!=\"true\",
site_name=~\"$Site\", name=~\"$Wireless\"})","format":"table","instant":true,"interval":"","legendFormat":"","refId":"A"},{"expr":"sum
by (channel,essid,ip,mac,name,network,oui,radio_desc,site_name,source) (\n unpoller_client_transmit_bytes_total{wired!=\"true\",site_name=~\"$Site\",
name=~\"$Wireless\"})","format":"table","instant":true,"interval":"","legendFormat":"","refId":"B"},{"expr":"sum
by (channel,essid,ip,mac,name,network,oui,radio_desc,site_name,source) (\n unpoller_client_uptime_seconds{wired!=\"true\",site_name=~\"$Site\",
name=~\"$Wireless\"})","format":"table","instant":true,"interval":"","legendFormat":"","refId":"C"}],"timeFrom":null,"title":"Wireless
Devices","transform":"table","type":"table-old"},{"columns":[],"datasource":"VictoriaMetrics","description":"This
table represents current (latest) data.\nBytes columns are lifetime totals.","fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fontSize":"80%","gridPos":{"h":12,"w":24,"x":0,"y":13},"hideTimeOverride":false,"id":22,"links":[],"pageSize":null,"scroll":true,"showHeader":true,"sort":{"col":9,"desc":true},"styles":[{"alias":"Time","align":"auto","dateFormat":"YYYY-MM-DD
HH:mm:ss","link":false,"linkUrl":"http://$__cell","pattern":"Time","type":"hidden"},{"alias":"Sw
Port","align":"auto","colorMode":null,"colors":["rgba(245, 54, 54, 0.9)","rgba(237,
129, 40, 0.89)","rgba(50, 172, 45, 0.97)"],"decimals":0,"pattern":"sw_port","thresholds":[],"type":"number","unit":"short"},{"alias":"Name","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":"name","thresholds":[],"type":"string","unit":"short"},{"alias":"Device
MAC","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,"link":false,"mappingType":1,"pattern":"mac","thresholds":[],"type":"string","unit":"short"},{"alias":"Uptime","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","thresholds":[],"type":"number","unit":"s"},{"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":"__name__","thresholds":[],"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":"gw_mac","thresholds":[],"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":"gw_name","thresholds":[],"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":"instance","thresholds":[],"type":"hidden","unit":"short"},{"alias":"Address","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":"ip","thresholds":[],"type":"string","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":"job","thresholds":[],"type":"hidden","unit":"short"},{"alias":"Network","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":"network","thresholds":[],"type":"string","unit":"short"},{"alias":"OUI","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":"oui","thresholds":[],"type":"string","unit":"short"},{"alias":"Site","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":"site_name","thresholds":[],"type":"string","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":"sw_mac","thresholds":[],"type":"hidden","unit":"short"},{"alias":"Switch","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":"sw_name","thresholds":[],"type":"string","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":"wired","thresholds":[],"type":"hidden","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":"Uptime","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 #A","thresholds":[],"type":"number","unit":"s"},{"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":1,"mappingType":1,"pattern":"Value
#B","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":1,"mappingType":1,"pattern":"Value #C","thresholds":[],"type":"number","unit":"decbytes"}],"targets":[{"expr":"sum
by (ap_name,ip,mac,name,network,oui,site_name,source,sw_port) (\n unpoller_client_uptime_seconds{wired=\"true\",
site_name=~\"$Site\", name=~\"$Wired\", sw_name=~\"$Switch\"})","format":"table","instant":true,"interval":"","refId":"A"},{"expr":"sum
by (ap_name,ip,mac,name,network,oui,site_name,source,sw_port) (\n unpoller_client_receive_bytes_total{wired=\"true\",
site_name=~\"$Site\", name=~\"$Wired\", sw_name=~\"$Switch\"})","format":"table","hide":false,"instant":true,"interval":"","refId":"B"},{"expr":"sum
by (ap_name,ip,mac,name,network,oui,site_name,source,sw_port) (\n unpoller_client_transmit_bytes_total{wired=\"true\",
site_name=~\"$Site\", name=~\"$Wired\", sw_name=~\"$Switch\"})","format":"table","hide":false,"instant":true,"interval":"","refId":"C"}],"timeFrom":null,"title":"Wired
Devices","transform":"table","type":"table-old"},{"aliasColors":{},"breakPoint":"50%","cacheTimeout":null,"combine":{"label":"Others","threshold":0},"datasource":"VictoriaMetrics","decimals":0,"description":"Visualize
wireless channel usage w/ wired client counts.","fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fontSize":"70%","format":"short","gridPos":{"h":10,"w":8,"x":0,"y":25},"hideTimeOverride":false,"id":9,"interval":null,"legend":{"header":"","percentage":true,"show":true,"values":false},"legendType":"Right
side","links":[],"maxDataPoints":3,"nullPointMode":"connected","pieType":"pie","strokeWidth":"2","targets":[{"expr":"count
by (hostname) (unpoller_client_uptime_seconds{site_name=~\"$Site\", name=~\"$Wired\",
sw_name=~\"$Switch\"})","instant":true,"legendFormat":"Wired","refId":"A"},{"expr":"count
by (channel) (unpoller_client_roam_count_total{site_name=~\"$Site\", name=~\"$Wireless\",
ap_name=~\"$AP\"})","instant":true,"interval":"$Smooth","legendFormat":"Channel
{{channel}}","refId":"B"}],"timeFrom":null,"title":"Clients / Channel","transparent":true,"type":"piechart","valueName":"current"},{"aliasColors":{},"breakPoint":"25%","cacheTimeout":null,"combine":{"label":"Others","threshold":0},"datasource":"VictoriaMetrics","decimals":0,"description":"Visualize
how many clients are connected to which radios/APs.","fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fontSize":"70%","format":"short","gridPos":{"h":10,"w":8,"x":8,"y":25},"hideTimeOverride":false,"id":11,"interval":null,"legend":{"header":"","percentage":true,"show":true,"values":false},"legendType":"Right
side","links":[],"maxDataPoints":3,"nullPointMode":"connected","pieType":"pie","strokeWidth":"3","targets":[{"expr":"count
by (radio_proto) (unpoller_client_roam_count_total{site_name=~\"$Site\", name=~\"$Wireless\",
ap_name=~\"$AP\"})","instant":true,"interval":"$Smooth","legendFormat":"{{radio_proto}}","refId":"A"}],"timeFrom":null,"title":"Clients
/ AP Radio","transparent":true,"type":"piechart","valueName":"current"},{"aliasColors":{},"breakPoint":"50%","cacheTimeout":null,"combine":{"label":"Others","threshold":"0.01"},"datasource":"VictoriaMetrics","decimals":0,"description":"This
shows an OUI breakdown from Unifi''s perspective. e = wired, w = wireless","fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fontSize":"70%","format":"short","gridPos":{"h":10,"w":8,"x":16,"y":25},"hideTimeOverride":false,"id":12,"interval":null,"legend":{"header":"Count","percentage":true,"percentageDecimals":0,"show":true,"sort":"current","sortDesc":true,"values":true},"legendType":"Right
side","links":[],"maxDataPoints":3,"nullPointMode":"connected","pieType":"pie","strokeWidth":1,"targets":[{"expr":"count
by (oui) (unpoller_client_uptime_seconds{site_name=~\"$Site\", name=~\"$Wireless\",
ap_name=~\"$AP\"})","hide":false,"instant":true,"interval":"$Smooth","legendFormat":"
w {{oui}}","refId":"A"},{"expr":"count by (oui) (+unpoller_client_uptime_seconds{site_name=~\"$Site\",
name=~\"$Wired\", sw_name=~\"$Switch\"})","hide":false,"instant":true,"interval":"$Smooth","legendFormat":"e {{oui}}","refId":"B"}],"timeFrom":null,"title":"Client
MAC OUI Breakdown","transparent":true,"type":"piechart","valueName":"current"},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","description":"Bandwidth
usage per wireless devices as reported by the UAPs. Rx is on the negative axis.
Does not include amazon devices.","fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":0,"fillGradient":0,"gridPos":{"h":14,"w":24,"x":0,"y":35},"hiddenSeries":false,"id":3,"legend":{"alignAsTable":true,"avg":true,"current":true,"hideEmpty":true,"hideZero":false,"max":true,"min":false,"rightSide":true,"show":true,"sort":"max","sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":1,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","seriesOverrides":[{"$$hashKey":"object:323","alias":"/Rx$/","transform":"negative-Y"}],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"sum
by ($Identifier) (rate(unpoller_client_transmit_bytes_total{name!~\".*camera.*|.*cam(era)?$\",
name=~\"$Wireless\", site_name=~\"$Site\", ap_name=~\"$AP\"}[$__interval]))","instant":false,"interval":"$Smooth","legendFormat":"{{name}}
{{mac}} Tx","refId":"B"},{"expr":"sum by ($Identifier) (rate(unpoller_client_receive_bytes_total{name!~\".*camera.*|.*cam(era)?$\",
name=~\"$Wireless\", site_name=~\"$Site\", ap_name=~\"$AP\"}[$__interval]))","instant":false,"interval":"$Smooth","legendFormat":"{{name}}
{{mac}} Rx","refId":"C"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"UAP
Bandwidth / Wireless Devices","tooltip":{"shared":true,"sort":2,"value_type":"individual"},"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"format":"Bps","label":"bytes
/ sec","logBase":1,"max":null,"min":null,"show":true},{"format":"short","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","description":"Wired
TX / RX bytes per second (calculated in 30 second buckets). Rx is on the negative
axis. Does not include amazon and camera devices. Unaffected by the AP setting.","fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":0,"fillGradient":0,"gridPos":{"h":17,"w":24,"x":0,"y":49},"hiddenSeries":false,"id":2,"legend":{"alignAsTable":true,"avg":true,"current":true,"hideEmpty":true,"max":true,"min":false,"rightSide":true,"show":true,"sort":"max","sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":1,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","seriesOverrides":[{"$$hashKey":"object:398","alias":"/Rx$/","transform":"negative-Y"}],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"sum
by ($Identifier) (rate(unpoller_client_transmit_bytes_total{name!~\".*camera.*|.*cam(era)?$\",
name=~\"$Wired\", site_name=~\"$Site\", sw_name=~\"$Switch\"}[$__interval]))","interval":"$Smooth","legendFormat":"{{name}}
{{mac}} Tx","refId":"A"},{"expr":"sum by ($Identifier) (rate(unpoller_client_receive_bytes_total{name!~\".*camera.*|.*cam(era)?$\",
name=~\"$Wired\", site_name=~\"$Site\", sw_name=~\"$Switch\"}[$__interval]))","hide":false,"interval":"$Smooth","intervalFactor":1,"legendFormat":"{{name}}
{{mac}} Rx","refId":"B"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"Switch
Bandwidth / Wired Devices","tooltip":{"shared":true,"sort":2,"value_type":"individual"},"transparent":true,"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"format":"Bps","label":"bytes
/ sec","logBase":1,"max":null,"min":null,"show":true},{"format":"short","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","description":"Amazon
Devices TX / RX bytes per second. Rx is on the negative axis. My home network
has a ton of Amazon devices, so I broke them out separately. If you don''t have
Amazon devices, or they have different names, you can edit the query to use a
different name. e = wired, w = wireless","fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":0,"fillGradient":0,"gridPos":{"h":11,"w":12,"x":0,"y":66},"hiddenSeries":false,"id":23,"legend":{"alignAsTable":true,"avg":true,"current":true,"max":true,"min":false,"rightSide":true,"show":true,"sort":"current","sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":1,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","seriesOverrides":[{"$$hashKey":"object:469","alias":"/Rx$/","transform":"negative-Y"}],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"sum
by ($Identifier) (rate(unpoller_client_transmit_bytes_total{name=~\"^amazon.*\",
name=~\"$Wireless\", site_name=~\"$Site\", ap_name=~\"$AP\"}[$__interval]))","hide":false,"interval":"$Smooth","legendFormat":"w
{{name}} {{mac}} Tx","refId":"A"},{"expr":"sum by ($Identifier) (rate(unpoller_client_receive_bytes_total{name=~\"^amazon.*\",
name=~\"$Wireless\", site_name=~\"$Site\", ap_name=~\"$AP\"}[$__interval]))","hide":false,"interval":"$Smooth","legendFormat":"w
{{name}} {{mac}} Rx","refId":"B"},{"expr":"sum by ($Identifier) (rate(unpoller_client_transmit_bytes_total{name=~\"^amazon.*\",
name=~\"$Wired\", site_name=~\"$Site\", sw_name=~\"$Switch\"}[$__interval]))","hide":false,"interval":"$Smooth","legendFormat":"e
{{name}} {{mac}} Tx","refId":"C"},{"expr":"sum by ($Identifier) (rate(unpoller_client_receive_bytes_total{name=~\"^amazon.*\",
name=~\"$Wired\", site_name=~\"$Site\", sw_name=~\"$Switch\"}[$__interval]))","hide":false,"interval":"$Smooth","legendFormat":"e
{{name}} {{mac}} Rx","refId":"D"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"Client
Bandwidth / Echos & FireTVs","tooltip":{"shared":true,"sort":2,"value_type":"individual"},"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"format":"Bps","label":"bytes
/ sec","logBase":1,"max":null,"min":null,"show":true},{"format":"short","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","description":"Cameras
TX / RX bytes per second. Rx is on the negative axis. This graph shows any device
with the word \"camera\" in its name and has nothing to do with UniFi Protect/video
products. e = wired, w = wireless","fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":0,"fillGradient":0,"gridPos":{"h":11,"w":12,"x":12,"y":66},"hiddenSeries":false,"id":15,"legend":{"alignAsTable":true,"avg":true,"current":true,"hideEmpty":true,"max":true,"min":false,"rightSide":true,"show":true,"sort":"avg","sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":1,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","seriesOverrides":[{"$$hashKey":"object:510","alias":"/Rx$/","transform":"negative-Y"}],"spaceLength":10,"stack":true,"steppedLine":false,"targets":[{"expr":"sum
by ($Identifier) (rate(unpoller_client_transmit_bytes_total{ap_name=~\"$AP\",
name=~\".*camera.*|.*cam$\", site_name=~\"$Site\"}[$__interval]))","hide":false,"instant":false,"interval":"$Smooth","legendFormat":"w
{{name}} {{mac}} Tx","refId":"A"},{"expr":"sum by ($Identifier) (rate(unpoller_client_receive_bytes_total{ap_name=~\"$AP\",
name=~\".*camera.*|.*cam$\", site_name=~\"$Site\"}[$__interval]))","hide":false,"interval":"$Smooth","legendFormat":"w
{{name}} {{mac}} Rx","refId":"B"},{"expr":"sum by ($Identifier) (rate(unpoller_client_transmit_bytes_total{sw_name=~\"$Switch\",
name=~\".*camera.*|.*cam$\", site_name=~\"$Site\"}[$__interval]))","hide":false,"interval":"$Smooth","legendFormat":"e
{{name}} {{mac}} Tx","refId":"C"},{"expr":"sum by ($Identifier) (rate(unpoller_client_receive_bytes_total{sw_name=~\"$Switch\",
name=~\".*camera.*|.*cam$\", site_name=~\"$Site\"}[$__interval]))","hide":false,"interval":"$Smooth","legendFormat":"e
{{name}} {{mac}} Rx","refId":"D"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"Client
Bandwidth: Cameras","tooltip":{"shared":true,"sort":2,"value_type":"individual"},"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"format":"Bps","label":"bytes
/ sec","logBase":1,"max":null,"min":null,"show":true},{"format":"short","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","decimals":0,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":0,"fillGradient":0,"gridPos":{"h":9,"w":12,"x":0,"y":77},"hiddenSeries":false,"id":7,"legend":{"alignAsTable":true,"avg":false,"current":true,"hideEmpty":true,"hideZero":false,"max":true,"min":true,"rightSide":true,"show":true,"sort":"min","sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":1,"links":[],"nullPointMode":"connected","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","seriesOverrides":[],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"sum
by ($Identifier) (unpoller_client_rssi_db{ap_name=~\"$AP\", site_name=~\"$Site\",
name=~\"$Wireless\"})","interval":"1m","legendFormat":"{{name}} {{mac}}","refId":"A"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"Received
Signal Strength Indicator","tooltip":{"shared":true,"sort":2,"value_type":"individual"},"transparent":true,"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"decimals":0,"format":"dB","label":"RSSI
Quality","logBase":1,"max":null,"min":null,"show":true},{"format":"short","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","decimals":0,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":0,"fillGradient":0,"gridPos":{"h":9,"w":12,"x":12,"y":77},"hiddenSeries":false,"id":10,"legend":{"alignAsTable":true,"avg":false,"current":true,"hideEmpty":false,"hideZero":false,"max":true,"min":true,"rightSide":true,"show":true,"sort":"max","sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":1,"links":[],"nullPointMode":"connected","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","seriesOverrides":[],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"sum
by ($Identifier) (unpoller_client_radio_signal_db{ap_name=~\"$AP\", site_name=~\"$Site\",
name=~\"$Wireless\"})","instant":false,"interval":"$Smooth","intervalFactor":1,"legendFormat":"{{name}}
{{mac}}","refId":"A"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"Wireless
Signal","tooltip":{"shared":true,"sort":2,"value_type":"individual"},"transparent":true,"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"decimals":0,"format":"dBm","label":"Signal
Power","logBase":1,"max":null,"min":null,"show":true},{"format":"short","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","decimals":0,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":0,"fillGradient":0,"gridPos":{"h":8,"w":12,"x":0,"y":86},"hiddenSeries":false,"id":6,"legend":{"alignAsTable":true,"avg":false,"current":true,"hideEmpty":true,"hideZero":false,"max":true,"min":true,"rightSide":true,"show":true,"sort":"current","sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":1,"links":[],"nullPointMode":"connected","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","seriesOverrides":[],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"sum
by ($Identifier) (unpoller_client_noise_db{ap_name=~\"$AP\", site_name=~\"$Site\",
name=~\"$Wireless\"})","instant":false,"interval":"$Smooth","legendFormat":"{{name}}
{{mac}}","refId":"A"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"UAP
Client Stats / Noise","tooltip":{"shared":true,"sort":1,"value_type":"individual"},"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"decimals":0,"format":"dB","label":"Noise","logBase":1,"max":null,"min":null,"show":true},{"format":"short","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","description":"Client
reported transmit rate.","fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":0,"fillGradient":0,"gridPos":{"h":8,"w":12,"x":12,"y":86},"hiddenSeries":false,"id":19,"legend":{"alignAsTable":true,"avg":true,"current":true,"max":true,"min":false,"rightSide":true,"show":true,"sort":"max","sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":1,"links":[],"nullPointMode":"connected","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","seriesOverrides":[],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"sum
by ($Identifier) (unpoller_client_radio_transmit_rate_bps{ap_name=~\"$AP\", site_name=~\"$Site\",
name=~\"$Wireless\"})","interval":"$Smooth","legendFormat":"{{name}} {{mac}}","refId":"A"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"TX
Rate","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":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","decimals":0,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":0,"fillGradient":0,"gridPos":{"h":8,"w":12,"x":0,"y":94},"hiddenSeries":false,"id":24,"legend":{"alignAsTable":true,"avg":false,"current":true,"hideEmpty":true,"hideZero":false,"max":true,"min":true,"rightSide":true,"show":true,"sort":"current","sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":1,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","seriesOverrides":[],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"avg
by ($Identifier) (rate(unpoller_client_wifi_attempts_transmit_total{ap_name=~\"$AP\",
site_name=~\"$Site\", name=~\"$Wireless\"}[$__interval]))","interval":"$Smooth","legendFormat":"{{name}}
{{mac}}","refId":"A"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"Client
Wifi Tx Attempts","tooltip":{"shared":true,"sort":1,"value_type":"individual"},"transparent":true,"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"decimals":0,"format":"short","label":"Attempts
/ Second","logBase":1,"max":null,"min":null,"show":true},{"format":"short","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","description":"Client
reported receive rate.","fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":0,"fillGradient":0,"gridPos":{"h":8,"w":12,"x":12,"y":94},"hiddenSeries":false,"id":26,"legend":{"alignAsTable":true,"avg":true,"current":true,"hideEmpty":true,"hideZero":false,"max":true,"min":false,"rightSide":true,"show":true,"sort":"current","sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":1,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","seriesOverrides":[],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"sum
by ($Identifier) (unpoller_client_radio_receive_rate_bps{ap_name=~\"$AP\", site_name=~\"$Site\",
name=~\"$Wireless\"})","interval":"$Smooth","legendFormat":"{{name}} {{mac}}","refId":"A"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"RX
Rate","tooltip":{"shared":true,"sort":2,"value_type":"individual"},"transparent":true,"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":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","decimals":0,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":0,"fillGradient":0,"gridPos":{"h":8,"w":12,"x":0,"y":102},"hiddenSeries":false,"id":30,"legend":{"alignAsTable":true,"avg":false,"current":true,"hideEmpty":true,"hideZero":false,"max":true,"min":true,"rightSide":true,"show":true,"sort":"max","sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":1,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","seriesOverrides":[],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"sum
by ($Identifier) (rate(unpoller_client_transmit_retries_total{ap_name=~\"$AP\",
site_name=~\"$Site\", name=~\"$Wireless\"}[$__interval]))","interval":"$Smooth","legendFormat":"{{name}}
{{mac}}","refId":"A"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"Client
Transmit Retries","tooltip":{"shared":true,"sort":2,"value_type":"individual"},"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"decimals":0,"format":"short","label":"Tx
Retries / Second","logBase":1,"max":null,"min":null,"show":true},{"format":"short","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","decimals":0,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":0,"fillGradient":0,"gridPos":{"h":8,"w":12,"x":12,"y":102},"hiddenSeries":false,"id":29,"legend":{"alignAsTable":true,"avg":false,"current":true,"hideEmpty":true,"hideZero":false,"max":true,"min":true,"rightSide":true,"show":true,"sort":"max","sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":2,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","seriesOverrides":[],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"sum
by ($Identifier) (unpoller_client_radio_transmit_power_dbm{ap_name=~\"$AP\", site_name=~\"$Site\",
name=~\"$Wireless\"})","interval":"$Smooth","legendFormat":"{{name}} {{mac}}","refId":"A"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"Client
Transmit Power","tooltip":{"shared":true,"sort":2,"value_type":"individual"},"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"decimals":0,"format":"dBm","label":"Transmit
Power dBm","logBase":1,"max":null,"min":null,"show":true},{"format":"short","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","decimals":0,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":1,"fillGradient":0,"gridPos":{"h":8,"w":12,"x":0,"y":110},"hiddenSeries":false,"id":25,"legend":{"alignAsTable":true,"avg":false,"current":true,"hideEmpty":true,"hideZero":false,"max":true,"min":true,"rightSide":true,"show":true,"sort":"max","sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":2,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","seriesOverrides":[],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"sum
by ($Identifier) (unpoller_client_anomalies{ap_name=~\"$AP\", site_name=~\"$Site\",
name=~\"$Wireless\"})","interval":"$Smooth","legendFormat":"{{name}} {{mac}}","refId":"A"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"Client
Anomalies","tooltip":{"shared":true,"sort":2,"value_type":"individual"},"transparent":true,"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"decimals":0,"format":"short","label":"Anomalies","logBase":1,"max":null,"min":null,"show":true},{"format":"short","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","decimals":0,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":0,"fillGradient":0,"gridPos":{"h":8,"w":12,"x":12,"y":110},"hiddenSeries":false,"id":31,"legend":{"alignAsTable":true,"avg":false,"current":true,"hideEmpty":true,"hideZero":false,"max":true,"min":true,"rightSide":true,"show":true,"sort":"current","sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":1,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","seriesOverrides":[],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"sum
by ($Identifier) (unpoller_client_satisfaction_ratio{ap_name=~\"$AP\", site_name=~\"$Site\",
name=~\"$Wireless\"})","interval":"$Smooth","legendFormat":"{{name}} {{mac}}","refId":"A"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"Client
Satisfaction","tooltip":{"shared":true,"sort":2,"value_type":"individual"},"transparent":true,"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"decimals":1,"format":"percentunit","label":"Client
Satisfaction","logBase":1,"max":"1","min":"0","show":true},{"format":"short","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","decimals":0,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":0,"fillGradient":0,"gridPos":{"h":8,"w":12,"x":0,"y":118},"hiddenSeries":false,"id":28,"legend":{"alignAsTable":true,"avg":false,"current":true,"hideEmpty":true,"hideZero":false,"max":true,"min":true,"rightSide":true,"show":true,"sort":"max","sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":2,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","seriesOverrides":[],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"sum
by ($Identifier) (unpoller_client_roam_count_total{ap_name=~\"$AP\", site_name=~\"$Site\",
name=~\"$Wireless\"})","interval":"$Smooth","legendFormat":"{{name}} {{mac}}","refId":"A"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"Roam
Count","tooltip":{"shared":true,"sort":2,"value_type":"individual"},"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"decimals":0,"format":"short","label":"Roam
Count","logBase":1,"max":null,"min":null,"show":true},{"format":"short","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","decimals":0,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":0,"fillGradient":0,"gridPos":{"h":8,"w":12,"x":12,"y":118},"hiddenSeries":false,"id":27,"legend":{"alignAsTable":true,"avg":false,"current":true,"hideEmpty":true,"hideZero":false,"max":false,"min":true,"rightSide":true,"show":true,"sort":"current","sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":2,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","seriesOverrides":[],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"sum
by ($Identifier) (unpoller_client_ccq_ratio{ap_name=~\"$AP\", site_name=~\"$Site\",
name=~\"$Wireless\"})","interval":"$Smooth","legendFormat":"{{name}} {{mac}}","refId":"A"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"Client
Connection Quality %","tooltip":{"shared":true,"sort":2,"value_type":"individual"},"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"decimals":1,"format":"percentunit","label":"CCQ","logBase":1,"max":"1","min":"0","show":true},{"format":"short","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}}],"refresh":"1m","schemaVersion":25,"style":"dark","tags":["unifi","unifi-poller"],"templating":{"list":[{"allValue":null,"current":{},"datasource":"VictoriaMetrics","definition":"label_values(unpoller_client_uptime_seconds,source)","hide":2,"includeAll":true,"label":null,"multi":true,"name":"Controller","options":[],"query":"label_values(unpoller_client_uptime_seconds,source)","refresh":1,"regex":"","skipUrlSync":false,"sort":2,"tagValuesQuery":"","tags":[],"tagsQuery":"","type":"query","useTags":false},{"allValue":".*","current":{},"datasource":"VictoriaMetrics","definition":"label_values(unpoller_client_uptime_seconds{source=~\"$Controller\"},site_name)","hide":0,"includeAll":true,"label":null,"multi":true,"name":"Site","options":[],"query":"label_values(unpoller_client_uptime_seconds{source=~\"$Controller\"},site_name)","refresh":1,"regex":"","skipUrlSync":false,"sort":1,"tagValuesQuery":"","tags":[],"tagsQuery":"","type":"query","useTags":false},{"allValue":"","current":{},"datasource":"VictoriaMetrics","definition":"label_values(unpoller_client_uptime_seconds{site_name=~\"$Site\"},ap_name)","hide":0,"includeAll":true,"label":null,"multi":true,"name":"AP","options":[],"query":"label_values(unpoller_client_uptime_seconds{site_name=~\"$Site\"},ap_name)","refresh":2,"regex":"","skipUrlSync":false,"sort":1,"tagValuesQuery":"","tags":[],"tagsQuery":"","type":"query","useTags":false},{"allValue":"","current":{},"datasource":"VictoriaMetrics","definition":"label_values(unpoller_client_uptime_seconds{site_name=~\"$Site\"},sw_name)","hide":0,"includeAll":true,"label":null,"multi":true,"name":"Switch","options":[],"query":"label_values(unpoller_client_uptime_seconds{site_name=~\"$Site\"},sw_name)","refresh":1,"regex":"","skipUrlSync":false,"sort":1,"tagValuesQuery":"","tags":[],"tagsQuery":"","type":"query","useTags":false},{"allValue":".*","current":{},"datasource":"VictoriaMetrics","definition":"label_values(unpoller_client_uptime_seconds{site_name=~\"$Site\",
ap_name=~\"$AP\", wired=\"false\"},name)","hide":0,"includeAll":true,"label":null,"multi":true,"name":"Wireless","options":[],"query":"label_values(unpoller_client_uptime_seconds{site_name=~\"$Site\",
ap_name=~\"$AP\", wired=\"false\"},name)","refresh":1,"regex":"","skipUrlSync":false,"sort":1,"tagValuesQuery":"","tags":[],"tagsQuery":"","type":"query","useTags":false},{"allValue":".*","current":{},"datasource":"VictoriaMetrics","definition":"label_values(unpoller_client_uptime_seconds{site_name=~\"$Site\",
sw_name=~\"$Switch\", wired=\"true\"},name)","hide":0,"includeAll":true,"label":null,"multi":true,"name":"Wired","options":[],"query":"label_values(unpoller_client_uptime_seconds{site_name=~\"$Site\",
sw_name=~\"$Switch\", wired=\"true\"},name)","refresh":1,"regex":"","skipUrlSync":false,"sort":1,"tagValuesQuery":"","tags":[],"tagsQuery":"","type":"query","useTags":false},{"allValue":null,"current":{"selected":true,"text":"2m","value":"2m"},"hide":0,"includeAll":false,"label":null,"multi":false,"name":"Smooth","options":[{"selected":false,"text":"30s","value":"30s"},{"selected":false,"text":"1m","value":"1m"},{"selected":true,"text":"2m","value":"2m"},{"selected":false,"text":"5m","value":"5m"},{"selected":false,"text":"10m","value":"10m"},{"selected":false,"text":"15m","value":"15m"},{"selected":false,"text":"30m","value":"30m"},{"selected":false,"text":"1h","value":"1h"}],"query":"30s,1m,2m,5m,10m,15m,30m,1h","skipUrlSync":false,"type":"custom"},{"allValue":null,"current":{"selected":true,"text":"name","value":"name"},"hide":0,"includeAll":false,"label":null,"multi":false,"name":"Identifier","options":[{"selected":true,"text":"name","value":"name"},{"selected":false,"text":"name,mac","value":"name,mac"}],"query":"name,
name\\,mac","queryValue":"","skipUrlSync":false,"type":"custom"}]},"time":{"from":"now-3h","to":"now"},"timepicker":{"nowDelay":"","refresh_intervals":["30s","1m","5m","15m","30m","1h","2h"],"time_options":["5m","15m","1h","6h","12h","24h","2d","7d","30d"]},"timezone":"browser","title":"UniFi-Poller:
Client Insights - Prometheus","uid":"jMfvAjxWz","version":30}'
kind: ConfigMap
metadata:
labels:
app.kubernetes.io/part-of: unpoller
grafana_dashboard: "1"
name: unpoller-dashboard-client-insights
namespace: monitoring
@@ -0,0 +1,88 @@
apiVersion: v1
data:
network-sites.json: '{"annotations":{"list":[{"builtIn":1,"datasource":"-- Grafana
--","enable":true,"hide":true,"iconColor":"rgba(0, 211, 255, 1)","name":"Annotations
& Alerts","type":"dashboard"}]},"description":"UniFi Poller v2.0 Displays detailed
information for network Sites in a UniFi controller using Prometheus.","editable":true,"gnetId":11311,"graphTooltip":1,"id":null,"iteration":1580616399315,"links":[{"asDropdown":true,"icon":"external
link","includeVars":false,"keepTime":true,"tags":["unifi-poller"],"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":[{"cacheTimeout":null,"colorBackground":false,"colorValue":false,"colors":["#299c46","rgba(237,
129, 40, 0.89)","#d44a3a"],"datasource":"VictoriaMetrics","decimals":null,"format":"none","gauge":{"maxValue":100,"minValue":0,"show":false,"thresholdLabels":false,"thresholdMarkers":true},"gridPos":{"h":4,"w":3,"x":0,"y":0},"id":41,"interval":null,"links":[],"mappingType":1,"mappingTypes":[{"name":"value
to text","value":1},{"name":"range to text","value":2}],"maxDataPoints":100,"nullPointMode":"connected","nullText":null,"options":{},"pluginVersion":"6.4.4","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,"ymax":null,"ymin":null},"tableColumn":"","targets":[{"expr":"sum(unpoller_site_switches)","format":"time_series","instant":true,"interval":"$Smooth","refId":"A"}],"thresholds":"","timeFrom":null,"timeShift":null,"title":"USW","type":"singlestat","valueFontSize":"100%","valueMaps":[{"op":"=","text":"N/A","value":"null"}],"valueName":"current"},{"cacheTimeout":null,"colorBackground":false,"colorValue":false,"colors":["#299c46","rgba(237,
129, 40, 0.89)","#d44a3a"],"datasource":"VictoriaMetrics","decimals":null,"format":"none","gauge":{"maxValue":100,"minValue":0,"show":false,"thresholdLabels":false,"thresholdMarkers":true},"gridPos":{"h":4,"w":3,"x":3,"y":0},"id":42,"interval":null,"links":[],"mappingType":1,"mappingTypes":[{"name":"value
to text","value":1},{"name":"range to text","value":2}],"maxDataPoints":100,"nullPointMode":"connected","nullText":null,"options":{},"pluginVersion":"6.4.4","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,"ymax":null,"ymin":null},"tableColumn":"","targets":[{"expr":"sum(unpoller_site_aps)","format":"time_series","instant":true,"interval":"$Smooth","refId":"A"}],"thresholds":"","timeFrom":null,"timeShift":null,"title":"UAP","type":"singlestat","valueFontSize":"100%","valueMaps":[{"op":"=","text":"N/A","value":"null"}],"valueName":"current"},{"cacheTimeout":null,"colorBackground":false,"colorValue":false,"colors":["#299c46","rgba(237,
129, 40, 0.89)","#d44a3a"],"datasource":"VictoriaMetrics","decimals":null,"format":"none","gauge":{"maxValue":100,"minValue":0,"show":false,"thresholdLabels":false,"thresholdMarkers":true},"gridPos":{"h":4,"w":3,"x":6,"y":0},"id":43,"interval":null,"links":[],"mappingType":1,"mappingTypes":[{"name":"value
to text","value":1},{"name":"range to text","value":2}],"maxDataPoints":100,"nullPointMode":"connected","nullText":null,"options":{},"pluginVersion":"6.4.4","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,"ymax":null,"ymin":null},"tableColumn":"","targets":[{"expr":"sum(unpoller_site_gateways)","format":"time_series","instant":true,"interval":"$Smooth","refId":"A"}],"thresholds":"","timeFrom":null,"timeShift":null,"title":"USG","type":"singlestat","valueFontSize":"100%","valueMaps":[{"op":"=","text":"N/A","value":"null"}],"valueName":"current"},{"cacheTimeout":null,"colorBackground":false,"colorValue":false,"colors":["#299c46","rgba(237,
129, 40, 0.89)","#d44a3a"],"datasource":"VictoriaMetrics","decimals":null,"format":"none","gauge":{"maxValue":100,"minValue":0,"show":false,"thresholdLabels":false,"thresholdMarkers":true},"gridPos":{"h":4,"w":3,"x":9,"y":0},"id":44,"interval":null,"links":[],"mappingType":1,"mappingTypes":[{"name":"value
to text","value":1},{"name":"range to text","value":2}],"maxDataPoints":100,"nullPointMode":"connected","nullText":null,"options":{},"pluginVersion":"6.4.4","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":true,"ymax":null,"ymin":null},"tableColumn":"","targets":[{"expr":"sum(unpoller_site_stations)","format":"time_series","instant":false,"interval":"$Smooth","refId":"A"}],"thresholds":"","timeFrom":null,"timeShift":null,"title":"Stations","type":"singlestat","valueFontSize":"100%","valueMaps":[{"op":"=","text":"N/A","value":"null"}],"valueName":"current"},{"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":4,"w":12,"x":12,"y":0},"id":37,"links":[],"mode":"html","options":{},"timeFrom":null,"timeShift":null,"title":"Information","type":"text"},{"collapsed":true,"gridPos":{"h":1,"w":24,"x":0,"y":4},"id":4,"panels":[{"cacheTimeout":null,"colorBackground":false,"colorValue":false,"colors":["#299c46","rgba(237,
129, 40, 0.89)","#d44a3a"],"datasource":"VictoriaMetrics","decimals":null,"format":"s","gauge":{"maxValue":100,"minValue":0,"show":false,"thresholdLabels":false,"thresholdMarkers":true},"gridPos":{"h":3,"w":6,"x":0,"y":5},"id":40,"interval":null,"links":[],"mappingType":1,"mappingTypes":[{"name":"value
to text","value":1},{"name":"range to text","value":2}],"maxDataPoints":100,"nullPointMode":"connected","nullText":null,"options":{},"pluginVersion":"6.4.4","postfix":"","postfixFontSize":"50%","prefix":"","prefixFontSize":"50%","rangeMaps":[{"from":"null","text":"N/A","to":"null"}],"scopedVars":{"Site":{"selected":false,"text":"Home
(default)","value":"Home (default)"}},"sparkline":{"fillColor":"rgba(31, 118,
189, 0.18)","full":false,"lineColor":"rgb(31, 120, 193)","show":false,"ymax":null,"ymin":null},"tableColumn":"","targets":[{"expr":"unpoller_site_uptime_seconds","format":"time_series","instant":true,"interval":"$Smooth","refId":"A"}],"thresholds":"","timeFrom":null,"timeShift":null,"title":"Uplink
Uptime","type":"singlestat","valueFontSize":"80%","valueMaps":[{"op":"=","text":"N/A","value":"null"}],"valueName":"current"},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","decimals":0,"description":"These
are counters, totals, but they don''t change much so the graph does not show rate.","fill":0,"fillGradient":0,"gridPos":{"h":11,"w":18,"x":6,"y":5},"hiddenSeries":false,"id":38,"legend":{"alignAsTable":true,"avg":false,"current":true,"hideEmpty":true,"hideZero":false,"max":true,"min":false,"rightSide":true,"show":true,"sort":"max","sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":2,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":2,"points":false,"renderer":"flot","repeatDirection":"h","scopedVars":{"Site":{"selected":false,"text":"Home
(default)","value":"Home (default)"}},"seriesOverrides":[],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"unpoller_site_iots{site_name=~\"$Site\",subsystem=~\"$Subsystem\"}","interval":"$Smooth","legendFormat":"{{subsystem}}
IoT","refId":"A"},{"expr":"unpoller_site_adopted{site_name=~\"$Site\",subsystem=~\"$Subsystem\"}","interval":"$Smooth","legendFormat":"{{subsystem}}
Adopted","refId":"B"},{"expr":"unpoller_site_disabled{site_name=~\"$Site\",subsystem=~\"$Subsystem\"}","interval":"$Smooth","legendFormat":"{{subsystem}}
Disabled","refId":"C"},{"expr":"unpoller_site_disconnected{site_name=~\"$Site\",subsystem=~\"$Subsystem\"}","interval":"$Smooth","legendFormat":"{{subsystem}}
Disconnected","refId":"D"},{"expr":"unpoller_site_pending{site_name=~\"$Site\",subsystem=~\"$Subsystem\"}","interval":"$Smooth","legendFormat":"{{subsystem}}
Pending","refId":"E"},{"expr":"unpoller_site_gateways{site_name=~\"$Site\",subsystem=~\"$Subsystem\"}","interval":"$Smooth","legendFormat":"{{subsystem}}
Gateways","refId":"F"},{"expr":"unpoller_site_switches{site_name=~\"$Site\",subsystem=~\"$Subsystem\"}","interval":"$Smooth","legendFormat":"{{subsystem}}
Switches","refId":"G"},{"expr":"unpoller_site_intenet_drops_total{site_name=~\"$Site\",subsystem=~\"$Subsystem\"}","interval":"$Smooth","legendFormat":"{{subsystem}}
Drops","refId":"H"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"Item
Counts","tooltip":{"shared":true,"sort":2,"value_type":"individual"},"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"decimals":0,"format":"short","label":"Item
Counts","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}},{"cacheTimeout":null,"datasource":"VictoriaMetrics","gridPos":{"h":8,"w":3,"x":0,"y":8},"id":32,"links":[],"options":{"fieldOptions":{"calcs":["lastNotNull"],"defaults":{"color":{"mode":"thresholds"},"decimals":0,"mappings":[{"id":0,"op":"=","text":"N/A","type":1,"value":"null"}],"max":400,"min":10,"nullValueMode":"connected","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"},"overrides":[],"values":false},"orientation":"horizontal","showThresholdLabels":false,"showThresholdMarkers":true},"pluginVersion":"6.6.0","scopedVars":{"Site":{"selected":false,"text":"Home
(default)","value":"Home (default)"}},"targets":[{"expr":"unpoller_site_latency_seconds{site_name=~\"$Site\"}","instant":true,"interval":"$Smooth","refId":"A"}],"timeFrom":null,"timeShift":null,"title":"","type":"gauge"},{"cacheTimeout":null,"datasource":"VictoriaMetrics","gridPos":{"h":8,"w":3,"x":3,"y":8},"id":33,"links":[],"options":{"fieldOptions":{"calcs":["lastNotNull"],"defaults":{"color":{"mode":"thresholds"},"mappings":[{"id":0,"op":"=","text":"N/A","type":1,"value":"null"}],"max":200,"min":1,"nullValueMode":"connected","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"},"overrides":[],"values":false},"orientation":"horizontal","showThresholdLabels":false,"showThresholdMarkers":true},"pluginVersion":"6.6.0","scopedVars":{"Site":{"selected":false,"text":"Home
(default)","value":"Home (default)"}},"targets":[{"expr":"unpoller_site_speedtest_ping{site_name=~\"$Site\"}","interval":"$Smooth","refId":"A"}],"timeFrom":null,"timeShift":null,"title":"","type":"gauge"},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","decimals":null,"description":"Shows
data transfer for each subsystem on the site. RX is on the negative axis.","fill":0,"fillGradient":0,"gridPos":{"h":8,"w":24,"x":0,"y":16},"hiddenSeries":false,"id":15,"legend":{"alignAsTable":true,"avg":false,"current":true,"max":true,"min":false,"rightSide":true,"show":true,"sort":"max","sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":1,"links":[],"maxPerRow":2,"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":[{"expr":"unpoller_site_transmit_rate_bytes{site_name=~\"$Site\",
subsystem=~\"$Subsystem\"}","interval":"$Smooth","legendFormat":"{{subsystem}}
Tx","refId":"A"},{"expr":"unpoller_site_receive_rate_bytes{site_name=~\"$Site\",
subsystem=~\"$Subsystem\"}","interval":"$Smooth","legendFormat":"{{subsystem}}
Rx","refId":"B"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"Data
Transfer","tooltip":{"shared":true,"sort":2,"value_type":"individual"},"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"decimals":null,"format":"Bps","label":"bytes
/ second","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,"datasource":"VictoriaMetrics","decimals":0,"description":"This
graphs shows clients connected to the site.","fill":0,"fillGradient":0,"gridPos":{"h":7,"w":24,"x":0,"y":24},"hiddenSeries":false,"id":2,"legend":{"alignAsTable":true,"avg":false,"current":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","repeat":null,"repeatDirection":"h","scopedVars":{"Site":{"selected":false,"text":"Home
(default)","value":"Home (default)"}},"seriesOverrides":[],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"unpoller_site_users{site_name=~\"$Site\",
subsystem=~\"$Subsystem\"}","interval":"$Smooth","legendFormat":"{{subsystem}}
Users","refId":"A"},{"expr":"unpoller_site_guests{site_name=~\"$Site\", subsystem=~\"$Subsystem\"}","interval":"$Smooth","legendFormat":"{{subsystem}}
Guests","refId":"B"},{"expr":"unpoller_site_remote_user_active{site_name=~\"$Site\",
subsystem=~\"$Subsystem\"}","interval":"$Smooth","legendFormat":"{{subsystem}}
Active","refId":"C"},{"expr":"unpoller_site_remote_user_inactive{site_name=~\"$Site\",
subsystem=~\"$Subsystem\"}","interval":"$Smooth","legendFormat":"{{subsystem}}
Inactive","refId":"D"},{"expr":"unpoller_site_stations{site_name=~\"$Site\", subsystem=~\"$Subsystem\"}","interval":"$Smooth","legendFormat":"{{subsystem}}
Stations","refId":"E"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"Client
Counts","tooltip":{"shared":true,"sort":2,"value_type":"individual"},"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"decimals":0,"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,"datasource":"VictoriaMetrics","decimals":0,"description":"This
graphs shows clients connected to the site.","fill":0,"fillGradient":0,"gridPos":{"h":7,"w":24,"x":0,"y":31},"hiddenSeries":false,"id":39,"legend":{"alignAsTable":true,"avg":false,"current":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":[{"expr":"rate(unpoller_site_remote_user_transmit_bytes_total{site_name=~\"$Site\"}[$__interval])","interval":"$Smooth","legendFormat":"VPN
Users Tx","refId":"A"},{"expr":"rate(unpoller_site_remote_user_receive_bytes_total{site_name=~\"$Site\"}[$__interval])","interval":"$Smooth","legendFormat":"VPN
Users Rx","refId":"B"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"VPN
Users Data Rate","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}},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","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":17,"w":24,"x":0,"y":38},"hiddenSeries":false,"id":45,"legend":{"alignAsTable":true,"avg":true,"current":false,"hideEmpty":true,"hideZero":true,"max":true,"min":false,"rightSide":true,"show":true,"sort":"max","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":[{"expr":"sum
by (category) (rate(unpoller_site_dpi_receive_bytes{site_name=~\"$Site\"}[$__interval]))","hide":false,"interval":"$Smooth","legendFormat":"{{category}}
Rx","refId":"A"},{"expr":"sum by (category) (rate(unpoller_site_dpi_transmit_bytes{site_name=~\"$Site\"}[$__interval]))","hide":false,"interval":"$Smooth","legendFormat":"{{category}}
Tx","refId":"B"}],"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","title":"Site:
$Site","type":"row"}],"refresh":"1m","schemaVersion":22,"style":"dark","tags":["unifi","unifi-poller"],"templating":{"list":[{"allValue":null,"current":{},"datasource":"VictoriaMetrics","definition":"label_values(unpoller_site_transmit_rate_bytes,source)","hide":0,"includeAll":true,"label":"","multi":true,"name":"Controller","options":[],"query":"label_values(unpoller_site_transmit_rate_bytes,source)","refresh":1,"regex":"","skipUrlSync":false,"sort":1,"tagValuesQuery":"","tags":[],"tagsQuery":"","type":"query","useTags":false},{"allValue":".*","current":{},"datasource":"VictoriaMetrics","definition":"label_values(unpoller_site_transmit_rate_bytes{source=~\"$Controller\"},site_name)","hide":2,"includeAll":true,"label":"","multi":false,"name":"Site","options":[],"query":"label_values(unpoller_site_transmit_rate_bytes{source=~\"$Controller\"},site_name)","refresh":1,"regex":"","skipUrlSync":false,"sort":1,"tagValuesQuery":"","tags":[],"tagsQuery":"","type":"query","useTags":false},{"allValue":".*","current":{},"datasource":"VictoriaMetrics","definition":"label_values(subsystem)","hide":2,"includeAll":true,"label":null,"multi":true,"name":"Subsystem","options":[],"query":"label_values(subsystem)","refresh":1,"regex":"","skipUrlSync":false,"sort":0,"tagValuesQuery":"","tags":[],"tagsQuery":"","type":"query","useTags":false},{"allValue":null,"current":{"selected":true,"text":"2m","value":"2m"},"hide":0,"includeAll":false,"label":null,"multi":false,"name":"Smooth","options":[{"selected":false,"text":"30s","value":"30s"},{"selected":true,"text":"1m","value":"1m"},{"selected":false,"text":"2m","value":"2m"},{"selected":false,"text":"5m","value":"5m"},{"selected":false,"text":"10m","value":"10m"}],"query":"30s,1m,2m,5m,10m","skipUrlSync":false,"type":"custom"}]},"time":{"from":"now-3h","to":"now"},"timepicker":{"nowDelay":"5s","refresh_intervals":["30s","1m","5m","15m","30m","1h","2h"],"time_options":["5m","15m","1h","6h","12h","24h","2d","7d","30d"]},"timezone":"browser","title":"UniFi-Poller:
Network Sites - Prometheus","uid":"9WaGWZaZk","version":9}'
kind: ConfigMap
metadata:
labels:
app.kubernetes.io/part-of: unpoller
grafana_dashboard: "1"
name: unpoller-dashboard-network-sites
namespace: monitoring
@@ -0,0 +1,266 @@
apiVersion: v1
data:
uap-insights.json: '{"annotations":{"list":[{"$$hashKey":"object:69","builtIn":1,"datasource":"--
Grafana --","enable":true,"hide":true,"iconColor":"rgba(0, 211, 255, 1)","name":"Annotations
& Alerts","type":"dashboard"}]},"description":"UniFi Poller v2.0.1 Displays detailed
information for wireless access points in a UniFi network using Prometheus.","editable":true,"gnetId":11314,"graphTooltip":1,"id":null,"iteration":1592125488769,"links":[{"asDropdown":true,"icon":"external
link","includeVars":false,"keepTime":true,"tags":["unifi-poller","unifi"],"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_UNIFI_POLLER}","fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"gridPos":{"h":3,"w":4,"x":0,"y":0},"id":34,"links":[],"mode":"html","title":"","transparent":true,"type":"text"},{"aliasColors":{"Channel
11":"#37872D","Channel 36":"#1F60C4","Channel 44":"#8F3BB8"},"breakPoint":"50%","cacheTimeout":null,"combine":{"label":"Others","threshold":0},"datasource":"VictoriaMetrics","decimals":0,"description":"Visualize
wireless channel usage w/ wired client counts.","fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fontSize":"70%","format":"short","gridPos":{"h":10,"w":6,"x":4,"y":0},"hideTimeOverride":false,"id":52,"interval":null,"legend":{"header":"","percentage":true,"percentageDecimals":0,"show":true,"values":false},"legendType":"Right
side","links":[],"maxDataPoints":3,"nullPointMode":"connected","pieType":"pie","strokeWidth":"3","targets":[{"expr":"count
by (channel) (unpoller_client_roam_count_total{site_name=~\"$Site\", ap_name=~\"$AP\"})\n","instant":false,"interval":"$Smooth","legendFormat":"Ch
{{channel}}","refId":"B"}],"timeFrom":null,"title":"Clients / Channel","transparent":true,"type":"piechart","valueName":"current"},{"aliasColors":{"ac":"#37872D","g":"#E0B400","na":"#1F60C4","ng":"#8F3BB8"},"breakPoint":"25%","cacheTimeout":null,"combine":{"label":"Others","threshold":0},"datasource":"VictoriaMetrics","decimals":0,"description":"Visualize
how many clients are connected to which radios/APs.","fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fontSize":"70%","format":"short","gridPos":{"h":10,"w":7,"x":10,"y":0},"hideTimeOverride":false,"id":54,"interval":null,"legend":{"header":"","percentage":true,"show":true,"sort":"current","sortDesc":true,"values":true},"legendType":"Right
side","links":[],"maxDataPoints":3,"nullPointMode":"connected","pieType":"pie","strokeWidth":"3","targets":[{"expr":"count
by (radio_desc) (unpoller_client_uptime_seconds{site_name=~\"$Site\", ap_name=~\"$AP\"})","instant":false,"interval":"$Smooth","legendFormat":"{{radio_desc}}","refId":"A"}],"timeFrom":null,"title":"Clients
/ AP Radio","transparent":true,"type":"piechart","valueName":"current"},{"aliasColors":{},"breakPoint":"50%","cacheTimeout":null,"combine":{"label":"Others","threshold":"0.01"},"datasource":"VictoriaMetrics","decimals":0,"description":"This
shows an OUI breakdown from Unifi''s perspective.","fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fontSize":"70%","format":"short","gridPos":{"h":10,"w":7,"x":17,"y":0},"hideTimeOverride":false,"id":56,"interval":null,"legend":{"header":"Count","percentage":true,"percentageDecimals":0,"show":true,"sortDesc":false,"values":true},"legendType":"Right
side","links":[],"maxDataPoints":3,"nullPointMode":"connected","pieType":"pie","strokeWidth":1,"targets":[{"expr":"count
by (oui) (unpoller_client_uptime_seconds{site_name=~\"$Site\", ap_name=~\"$AP\"})","instant":false,"interval":"$Smooth","legendFormat":"e
{{oui}}","refId":"A"}],"timeFrom":null,"title":"Client / MAC OUI","transparent":true,"type":"piechart","valueName":"current"},{"cacheTimeout":null,"colorBackground":false,"colorValue":false,"colors":["rgba(245,
54, 54, 0.9)","rgba(237, 129, 40, 0.89)","rgba(50, 172, 45, 0.97)"],"datasource":"VictoriaMetrics","description":"","editable":true,"error":false,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"format":"none","gauge":{"maxValue":100,"minValue":0,"show":false,"thresholdLabels":false,"thresholdMarkers":true},"gridPos":{"h":4,"w":2,"x":0,"y":3},"id":48,"interval":null,"isNew":true,"links":[],"mappingType":1,"mappingTypes":[{"name":"value
to text","value":1},{"name":"range to text","value":2}],"maxDataPoints":100,"nullPointMode":"connected","nullText":null,"postfix":"","postfixFontSize":"80%","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":"sum(unpoller_device_stations{site_name=~\"$Site\",
name=~\"$AP\", station_type=\"user\"})","instant":true,"refId":"A"}],"thresholds":"","timeFrom":null,"title":"Users","type":"singlestat","valueFontSize":"110%","valueMaps":[],"valueName":"current"},{"cacheTimeout":null,"colorBackground":false,"colorValue":false,"colors":["rgba(245,
54, 54, 0.9)","rgba(237, 129, 40, 0.89)","rgba(50, 172, 45, 0.97)"],"datasource":"VictoriaMetrics","description":"","editable":true,"error":false,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"format":"none","gauge":{"maxValue":100,"minValue":0,"show":false,"thresholdLabels":false,"thresholdMarkers":true},"gridPos":{"h":4,"w":2,"x":2,"y":3},"id":60,"interval":null,"isNew":true,"links":[],"mappingType":1,"mappingTypes":[{"name":"value
to text","value":1},{"name":"range to text","value":2}],"maxDataPoints":100,"nullPointMode":"connected","nullText":null,"postfix":"","postfixFontSize":"80%","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":"sum(unpoller_device_stations{site_name=~\"$Site\",
name=~\"$AP\", station_type=\"guest\"})","instant":true,"refId":"A"}],"thresholds":"","timeFrom":null,"title":"Guests","type":"singlestat","valueFontSize":"110%","valueMaps":[],"valueName":"current"},{"bgColor":"#3f2b5b","clockType":"12
hour","countdownSettings":{"customFormat":null,"endCountdownTime":"2018-04-29T21:47:00.000Z","endText":"00:00:00"},"datasource":"${DS_UNIFI_POLLER}","dateSettings":{"dateFormat":"YYYY-MM-DD","fontSize":"12px","fontWeight":"bold","showDate":true},"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"gridPos":{"h":3,"w":4,"x":0,"y":7},"id":32,"links":[],"mode":"time","offsetFromUtc":null,"offsetFromUtcMinutes":null,"options":{"bgColor":"","clockType":"24
hour","countdownSettings":{"endCountdownTime":"2020-06-14T00:36:42-07:00","endText":"00:00:00"},"dateSettings":{"dateFormat":"YYYY-MM-DD","fontSize":"20px","fontWeight":"normal","showDate":false},"mode":"time","timeSettings":{"fontSize":"12px","fontWeight":"normal"},"timezone":"","timezoneSettings":{"fontSize":"12px","fontWeight":"normal","showTimezone":false,"zoneFormat":"offsetAbbv"}},"refreshSettings":{"syncWithDashboard":false},"timeSettings":{"customFormat":"HH:mm:ss","fontSize":"30px","fontWeight":"normal"},"timezone":null,"timezoneSettings":{"fontSize":"12px","fontWeight":"normal","showTimezone":false,"zoneFormat":"offsetAbbv"},"title":"Now","type":"grafana-clock-panel"},{"columns":[],"datasource":"VictoriaMetrics","editable":true,"error":false,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fontSize":"100%","gridPos":{"h":6,"w":24,"x":0,"y":10},"id":1,"isNew":true,"links":[],"pageSize":null,"scroll":false,"showHeader":true,"sort":{"col":11,"desc":true},"styles":[{"$$hashKey":"object:9911","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,"pattern":"Time","thresholds":[],"type":"hidden","unit":"short"},{"$$hashKey":"object:9912","alias":"Uptime","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,"pattern":"Value #A","thresholds":[],"type":"hidden","unit":"dtdurations"},{"$$hashKey":"object:9913","alias":"Name","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,"link":false,"linkTargetBlank":true,"linkUrl":"http:","pattern":"name","preserveFormat":false,"sanitize":false,"thresholds":[],"type":"string","unit":"short"},{"$$hashKey":"object:9915","alias":"Model","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,"pattern":"model","thresholds":[],"type":"string","unit":"short"},{"$$hashKey":"object:9916","alias":"Device
MAC","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,"pattern":"mac","thresholds":[],"type":"string","unit":"short"},{"$$hashKey":"object:9917","alias":"Unifi
Serial #","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,"pattern":"serial","thresholds":[],"type":"string","unit":"short"},{"$$hashKey":"object:9918","alias":"Site","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,"pattern":"site_name","thresholds":[],"type":"string","unit":"short"},{"$$hashKey":"object:9919","alias":"Version","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,"pattern":"version","thresholds":[],"type":"string","unit":"short"},{"$$hashKey":"object:9923","alias":"Address","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":"ip","thresholds":[],"type":"string","unit":"short"},{"$$hashKey":"object:9924","alias":"Type","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":"type","thresholds":[],"type":"string","unit":"short"},{"$$hashKey":"object:9925","alias":"Type","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":"type","thresholds":[],"type":"string","unit":"decbytes"},{"$$hashKey":"object:9926","alias":"Uptime","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 #B","thresholds":[],"type":"number","unit":"s"},{"$$hashKey":"object:9928","alias":"Bytes","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":1,"mappingType":1,"pattern":"Value #C","thresholds":[],"type":"number","unit":"bytes"}],"targets":[{"expr":"sum
by (ip,mac,model,name,serial,site_name,type,version) (unpoller_device_info{site_name=~\"$Site\",
name=~\"$AP\"})","format":"table","instant":true,"interval":"","legendFormat":"","refId":"A"},{"expr":"sum
by (ip,mac,model,name,serial,site_name,type,version) (unpoller_device_uptime_seconds{site_name=~\"$Site\",
name=~\"$AP\"})","format":"table","hide":false,"instant":true,"interval":"","legendFormat":"","refId":"B"},{"expr":"sum
by (ip,mac,model,name,serial,site_name,type,version) (unpoller_device_bytes_total{site_name=~\"$Site\",
name=~\"$AP\"})","format":"table","hide":false,"instant":true,"interval":"","legendFormat":"","refId":"C"}],"timeFrom":null,"title":"Access
Point Details","transform":"table","type":"table-old"},{"columns":[],"datasource":"VictoriaMetrics","description":"The
counters in this table represent uptime totals and do not change with the time
range selector. ","editable":true,"error":false,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fontSize":"100%","gridPos":{"h":10,"w":24,"x":0,"y":16},"id":49,"isNew":true,"links":[],"pageSize":null,"scroll":false,"showHeader":true,"sort":{"col":15,"desc":true},"styles":[{"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,"pattern":"Time","thresholds":[],"type":"hidden","unit":"short"},{"alias":"BSSID","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,"link":false,"linkTargetBlank":true,"linkUrl":"http:","pattern":"bssid","preserveFormat":false,"sanitize":false,"thresholds":[],"type":"string","unit":"short"},{"alias":"ESSID","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":"essid","thresholds":[],"type":"string","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":"job","thresholds":[],"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":"__name__","thresholds":[],"type":"hidden","unit":"short"},{"alias":"Serial","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":"serial","thresholds":[],"type":"string","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":"type","thresholds":[],"type":"hidden","unit":"short"},{"alias":"MAC","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":"mac","thresholds":[],"type":"string","unit":"short"},{"alias":"Site","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":"site_name","thresholds":[],"type":"string","unit":"short"},{"alias":"VAP","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":"vap_name","thresholds":[],"type":"string","unit":"short"},{"alias":"Version","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":"version","thresholds":[],"type":"string","unit":"short"},{"alias":"CCQ","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 #A","thresholds":[],"type":"number","unit":"percentunit"},{"alias":"Model","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":"model","thresholds":[],"type":"string","unit":"short"},{"alias":"Name","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":"radio_name","thresholds":[],"type":"string","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":"instance","thresholds":[],"type":"hidden","unit":"short"},{"alias":"AP
Name","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":"name","thresholds":[],"type":"string","unit":"short"},{"alias":"Usage","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":"usage","thresholds":[],"type":"string","unit":"short"},{"alias":"Radio","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":"radio","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":"sum by
(bssid,essid,ap_name,name,radio,radio_name,vap_name,site_name,usage,source) (unpoller_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)
(unpoller_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)
(unpoller_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)
(unpoller_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)
(unpoller_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)
(unpoller_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)
(unpoller_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)
(unpoller_device_vap_transmit_packets_total{site_name=~\"$Site\", name=~\"$AP\"})
","format":"table","hide":false,"instant":true,"interval":"","refId":"I"}],"timeFrom":null,"title":"Networks
/ UAP","transform":"table","transparent":true,"type":"table-old"},{"aliasColors":{"wap-lower":"dark-green","wap-upper":"dark-purple"},"bars":false,"cacheTimeout":null,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","description":"","fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":0,"fillGradient":0,"gridPos":{"h":7,"w":12,"x":0,"y":26},"hiddenSeries":false,"hideTimeOverride":true,"id":30,"interval":"","legend":{"avg":false,"current":false,"hideEmpty":true,"max":true,"min":false,"show":true,"total":false,"values":true},"lines":true,"linewidth":2,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":2,"points":false,"renderer":"flot","seriesOverrides":[],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"unpoller_device_cpu_utilization_ratio{site_name=~\"$Site\",name=~\"$AP\"}","interval":"$Smooth","legendFormat":"{{name}}","refId":"A"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"UAP
CPU Usage","tooltip":{"shared":true,"sort":2,"value_type":"individual"},"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"format":"percentunit","label":"CPU
Utilization","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":{"wap-lower":"dark-green","wap-upper":"dark-purple"},"bars":false,"cacheTimeout":null,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","description":"","fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":0,"fillGradient":0,"gridPos":{"h":7,"w":12,"x":12,"y":26},"hiddenSeries":false,"hideTimeOverride":true,"id":47,"interval":"","legend":{"avg":false,"current":false,"hideEmpty":true,"max":true,"min":false,"show":true,"total":false,"values":true},"lines":true,"linewidth":2,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":2,"points":false,"renderer":"flot","seriesOverrides":[],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"unpoller_device_memory_utilization_ratio{site_name=~\"$Site\",name=~\"$AP\"}","interval":"$Smooth","legendFormat":"{{name}}","refId":"A"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"UAP
Memory Usage","tooltip":{"shared":true,"sort":2,"value_type":"individual"},"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"format":"percentunit","label":"Memory
Utilization","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":{"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,"datasource":"VictoriaMetrics","editable":true,"error":false,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":1,"fillGradient":0,"gridPos":{"h":7,"w":12,"x":0,"y":33},"hiddenSeries":false,"id":3,"isNew":true,"legend":{"alignAsTable":false,"avg":false,"current":false,"hideEmpty":true,"hideZero":true,"max":true,"min":false,"show":true,"sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":1,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","seriesOverrides":[{"alias":"/load15$/","fill":0,"lines":true,"linewidth":6},{}],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"unpoller_device_load_average_1{site_name=~\"$Site\",name=~\"$AP\"}","interval":"$Smooth","legendFormat":"{{name}}
load1","refId":"A"},{"expr":"unpoller_device_load_average_5{site_name=~\"$Site\",name=~\"$AP\"}","hide":true,"interval":"$Smooth","legendFormat":"{{name}}
load5","refId":"B"},{"expr":"unpoller_device_load_average_15{site_name=~\"$Site\",name=~\"$AP\"}","interval":"$Smooth","legendFormat":"{{name}}
load15","refId":"C"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"UAP
Load Average","tooltip":{"msResolution":false,"shared":true,"sort":2,"value_type":"cumulative"},"transparent":true,"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"format":"none","label":null,"logBase":1,"max":null,"min":null,"show":true},{"format":"short","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","decimals":0,"editable":true,"error":false,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":0,"fillGradient":0,"gridPos":{"h":7,"w":12,"x":12,"y":33},"hiddenSeries":false,"id":46,"isNew":true,"legend":{"alignAsTable":true,"avg":false,"current":true,"hideEmpty":true,"hideZero":false,"max":true,"min":true,"rightSide":true,"show":true,"sort":"current","sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":3,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","seriesOverrides":[],"spaceLength":10,"stack":false,"steppedLine":true,"targets":[{"expr":"unpoller_device_stations{site_name=~\"$Site\",name=~\"$AP\"}","interval":"$Smooth","legendFormat":"{{name}}
users","refId":"A"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"Clients
/ UAP","tooltip":{"msResolution":false,"shared":true,"sort":2,"value_type":"individual"},"transparent":true,"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"format":"none","label":"","logBase":1,"max":null,"min":null,"show":true},{"format":"short","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","description":"Devices
TX / RX bytes per second grouped by OUI. RX on negative axis.","fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":0,"fillGradient":0,"gridPos":{"h":8,"w":12,"x":0,"y":40},"hiddenSeries":false,"id":42,"legend":{"alignAsTable":true,"avg":true,"current":true,"hideEmpty":true,"max":true,"min":false,"rightSide":true,"show":true,"sort":"current","sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":1,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","seriesOverrides":[{"alias":"/Rx$/","transform":"negative-Y"}],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"sum
(unpoller_client_receive_rate_bytes{site_name=~\"$Site\",ap_name=~\"$AP\"}) by
(oui)","interval":"$Smooth","legendFormat":"{{oui}} Rx","refId":"A"},{"expr":"sum
(unpoller_client_transmit_rate_bytes{site_name=~\"$Site\",ap_name=~\"$AP\"}) by
(oui)","interval":"$Smooth","legendFormat":"{{oui}} Tx","refId":"B"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"Wireless
Traffic / Vendor","tooltip":{"shared":true,"sort":2,"value_type":"individual"},"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"format":"bps","label":null,"logBase":1,"max":null,"min":null,"show":true},{"format":"short","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","decimals":0,"editable":true,"error":false,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":0,"fillGradient":0,"gridPos":{"h":8,"w":12,"x":12,"y":40},"hiddenSeries":false,"id":19,"isNew":true,"legend":{"alignAsTable":true,"avg":false,"current":true,"hideEmpty":true,"hideZero":true,"max":true,"min":true,"rightSide":true,"show":true,"total":false,"values":true},"lines":true,"linewidth":1,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","seriesOverrides":[],"spaceLength":10,"stack":true,"steppedLine":false,"targets":[{"expr":"sum
(unpoller_device_radio_stations{radio=\"ng\", site_name=~\"$Site\",name=~\"$AP\",
station_type=\"guest\"}) by (radio,name)","hide":false,"interval":"$Smooth","legendFormat":"{{name}}
Guests 2,4GHz","refId":"A"},{"expr":"sum (unpoller_device_radio_stations{radio=\"ng\",
site_name=~\"$Site\",name=~\"$AP\", station_type=\"user\"}) by (radio,name)","interval":"$Smooth","legendFormat":"{{name}}
Users 2.4GHz","refId":"B"},{"expr":"sum (unpoller_device_radio_stations{radio=\"na\",
site_name=~\"$Site\",name=~\"$AP\", station_type=\"user\"}) by (radio,name)","hide":false,"interval":"$Smooth","legendFormat":"{{name}}
Users 5GHz","refId":"C"},{"expr":"sum (unpoller_device_radio_stations{radio=\"na\",
site_name=~\"$Site\",name=~\"$AP\", station_type=\"guest\"}) by (radio,name)","hide":false,"interval":"$Smooth","legendFormat":"{{name}}
Guests 5GHz","refId":"D"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"Users
& Guests / Radio Band","tooltip":{"msResolution":false,"shared":true,"sort":2,"value_type":"individual"},"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"format":"none","label":"","logBase":1,"max":null,"min":null,"show":true},{"format":"short","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","decimals":0,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":0,"fillGradient":0,"gridPos":{"h":8,"w":12,"x":0,"y":48},"hiddenSeries":false,"id":59,"legend":{"alignAsTable":true,"avg":false,"current":true,"hideEmpty":true,"hideZero":true,"max":true,"min":true,"rightSide":true,"show":true,"sort":"current","sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":1,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","seriesOverrides":[],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"unpoller_device_vap_average_client_signal{name=~\"$AP\"}","interval":"$Smooth","legendFormat":"{{name}}
{{vap_name}} {{radio}}","refId":"A"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"Average
AP Client Signal","tooltip":{"shared":true,"sort":2,"value_type":"individual"},"transparent":true,"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"decimals":0,"format":"dBm","label":"Average
Client Signal","logBase":1,"max":null,"min":null,"show":true},{"format":"short","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","decimals":0,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":0,"fillGradient":0,"gridPos":{"h":8,"w":12,"x":12,"y":48},"hiddenSeries":false,"id":44,"legend":{"alignAsTable":true,"avg":false,"current":true,"hideEmpty":true,"hideZero":true,"max":true,"min":true,"rightSide":true,"show":true,"sort":"current","sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":1,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","seriesOverrides":[],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"avg(unpoller_client_rssi_db{ap_name=~\"$AP\"})
by (ap_name, radio_name)","interval":"$Smooth","legendFormat":"{{ap_name}} {{radio_name}}","refId":"A"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"Average
AP Client RSSI","tooltip":{"shared":true,"sort":2,"value_type":"individual"},"transparent":true,"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"decimals":0,"format":"dBm","label":"Average
Client RSSI","logBase":1,"max":null,"min":null,"show":true},{"format":"short","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","editable":true,"error":false,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":0,"fillGradient":0,"gridPos":{"h":8,"w":12,"x":0,"y":56},"hiddenSeries":false,"id":18,"isNew":true,"legend":{"alignAsTable":true,"avg":false,"current":true,"hideEmpty":true,"hideZero":true,"max":true,"min":true,"show":true,"total":false,"values":true},"lines":true,"linewidth":2,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","seriesOverrides":[],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"unpoller_device_vap_ccq_ratio{site_name=~\"$Site\",name=~\"$AP\",
radio=\"na\"}","interval":"$Smooth","legendFormat":"{{name}} {{vap_name}}","refId":"A"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"5
GHz Client Connection Quality","tooltip":{"msResolution":false,"shared":true,"sort":2,"value_type":"cumulative"},"transparent":true,"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"format":"percentunit","label":"Average
CCQ % / VAP","logBase":1,"max":null,"min":null,"show":true},{"format":"short","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","editable":true,"error":false,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":0,"fillGradient":0,"gridPos":{"h":8,"w":12,"x":12,"y":56},"hiddenSeries":false,"id":58,"isNew":true,"legend":{"alignAsTable":true,"avg":false,"current":true,"hideEmpty":true,"hideZero":true,"max":true,"min":true,"rightSide":true,"show":true,"total":false,"values":true},"lines":true,"linewidth":2,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","seriesOverrides":[],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"unpoller_device_vap_ccq_ratio{site_name=~\"$Site\",name=~\"$AP\",
radio=\"ng\"}","interval":"1m","legendFormat":"{{name}} {{vap_name}}","refId":"A"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"2.4
GHz Client Connection Quality","tooltip":{"msResolution":false,"shared":true,"sort":2,"value_type":"cumulative"},"transparent":true,"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"format":"percentunit","label":"Average
CCQ % / VAP","logBase":1,"max":null,"min":null,"show":true},{"format":"short","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","decimals":0,"editable":true,"error":false,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":0,"fillGradient":0,"gridPos":{"h":8,"w":12,"x":0,"y":64},"hiddenSeries":false,"id":8,"isNew":true,"legend":{"alignAsTable":true,"avg":false,"current":true,"hideEmpty":true,"max":true,"min":false,"rightSide":true,"show":true,"sort":"max","sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":3,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","seriesOverrides":[{"alias":""}],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"unpoller_device_radio_channel_utilization_receive_ratio{radio=\"na\",site_name=~\"$Site\",name=~\"$AP\"}","interval":"$Smooth","legendFormat":"{{name}}
Rx","refId":"B"},{"expr":"unpoller_device_radio_channel_utilization_transmit_ratio{radio=\"na\",site_name=~\"$Site\",name=~\"$AP\"}","interval":"$Smooth","legendFormat":"{{name}}
Tx","refId":"C"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"5
GHz Channel Utilization","tooltip":{"msResolution":false,"shared":true,"sort":2,"value_type":"cumulative"},"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"decimals":1,"format":"percentunit","label":null,"logBase":1,"max":null,"min":null,"show":true},{"format":"short","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","decimals":0,"description":"Displays
2.4GHz usage.","editable":true,"error":false,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":0,"fillGradient":0,"gridPos":{"h":8,"w":12,"x":12,"y":64},"hiddenSeries":false,"id":27,"isNew":true,"legend":{"alignAsTable":true,"avg":false,"current":true,"hideEmpty":true,"max":true,"min":false,"rightSide":true,"show":true,"total":false,"values":true},"lines":true,"linewidth":3,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","seriesOverrides":[{"alias":""}],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"unpoller_device_radio_channel_utilization_receive_ratio{radio=\"ng\",site_name=~\"$Site\",name=~\"$AP\"}","interval":"$Smooth","legendFormat":"{{name}}
{{radio}} Rx","refId":"B"},{"expr":"unpoller_device_radio_channel_utilization_transmit_ratio{radio=\"ng\",site_name=~\"$Site\",name=~\"$AP\"}","interval":"$Smooth","legendFormat":"{{name}}
{{radio}} Tx","refId":"C"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"2.4
GHz Channel Utilization","tooltip":{"msResolution":false,"shared":true,"sort":2,"value_type":"cumulative"},"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"decimals":null,"format":"percentunit","label":null,"logBase":1,"max":null,"min":null,"show":true},{"format":"short","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","description":"RX
is on the negative Axis.","editable":true,"error":false,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":0,"fillGradient":0,"gridPos":{"h":7,"w":12,"x":0,"y":72},"hiddenSeries":false,"id":20,"interval":"","isNew":true,"legend":{"alignAsTable":true,"avg":false,"current":true,"hideEmpty":true,"hideZero":false,"max":true,"min":false,"rightSide":true,"show":true,"sort":"current","sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":1,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","seriesOverrides":[{"alias":"/Rx$/","transform":"negative-Y"}],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"sum
(rate(unpoller_device_vap_transmit_bytes_total{radio=\"na\",site_name=~\"$Site\",name=~\"$AP\"}[5m]))
by (name)","interval":"$Smooth","legendFormat":"{{name}} Tx","refId":"A"},{"expr":"sum
(rate(unpoller_device_vap_receive_bytes_total{radio=\"na\",site_name=~\"$Site\",name=~\"$AP\"}[5m]))
by (name)","interval":"$Smooth","legendFormat":"{{name}} Rx","refId":"B"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"5
GHz Traffic","tooltip":{"msResolution":false,"shared":true,"sort":2,"value_type":"cumulative"},"transparent":true,"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"format":"bps","label":null,"logBase":1,"max":null,"min":null,"show":true},{"format":"pps","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","description":"RX
is on the negative Axis.","editable":true,"error":false,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":0,"fillGradient":0,"gridPos":{"h":7,"w":12,"x":12,"y":72},"hiddenSeries":false,"id":24,"isNew":true,"legend":{"alignAsTable":true,"avg":false,"current":true,"hideEmpty":true,"max":true,"min":false,"rightSide":true,"show":true,"sort":"current","sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":1,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","seriesOverrides":[{"alias":"/Rx$/","transform":"negative-Y"}],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"sum
(rate(unpoller_device_vap_transmit_bytes_total{radio=\"ng\",site_name=~\"$Site\",name=~\"$AP\"}[5m]))
by (name)","interval":"$Smooth","legendFormat":"{{name}} Tx","refId":"A"},{"expr":"sum
(rate(unpoller_device_vap_receive_bytes_total{radio=\"ng\",site_name=~\"$Site\",name=~\"$AP\"}[5m]))
by (name)","interval":"$Smooth","legendFormat":"{{name}} Rx","refId":"B"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"2.4
GHz Traffic","tooltip":{"msResolution":false,"shared":true,"sort":2,"value_type":"cumulative"},"transparent":true,"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"format":"bps","label":null,"logBase":1,"max":null,"min":null,"show":true},{"format":"pps","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","decimals":0,"description":"PPS
on the na band. In is on the negative Axis.","editable":true,"error":false,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":0,"fillGradient":0,"gridPos":{"h":7,"w":12,"x":0,"y":79},"hiddenSeries":false,"id":22,"isNew":true,"legend":{"alignAsTable":true,"avg":false,"current":true,"hideEmpty":true,"max":true,"min":false,"rightSide":true,"show":true,"total":false,"values":true},"lines":true,"linewidth":1,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","seriesOverrides":[{"alias":"/In$/","transform":"negative-Y"}],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"sum
(rate(unpoller_device_vap_transmit_packets_total{radio=\"na\",site_name=~\"$Site\",name=~\"$AP\"}[$__interval]))
by (name)","hide":false,"interval":"$Smooth","legendFormat":"{{name}} Out","refId":"A"},{"expr":"sum
(rate(unpoller_device_vap_receive_packets_total{radio=\"na\",site_name=~\"$Site\",name=~\"$AP\"}[$__interval]))
by (name)","interval":"$Smooth","legendFormat":"{{name}} In","refId":"B"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"5
GHz Packets","tooltip":{"msResolution":false,"shared":true,"sort":2,"value_type":"cumulative"},"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"decimals":1,"format":"pps","label":"PPS","logBase":1,"max":null,"min":null,"show":true},{"format":"pps","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","decimals":0,"description":"PPS
on the ng band calculated in 30 second buckets. In is on the negative Axis.","editable":true,"error":false,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":0,"fillGradient":0,"gridPos":{"h":7,"w":12,"x":12,"y":79},"hiddenSeries":false,"id":25,"isNew":true,"legend":{"alignAsTable":true,"avg":false,"current":true,"hideEmpty":true,"max":true,"min":false,"rightSide":true,"show":true,"sort":"max","sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":1,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","seriesOverrides":[{"alias":"/In$/","transform":"negative-Y"}],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"sum
(rate(unpoller_device_vap_transmit_packets_total{radio=\"ng\",site_name=~\"$Site\",name=~\"$AP\"}[$__interval]))
by (name)","interval":"$Smooth","legendFormat":"{{name}} Out","refId":"A"},{"expr":"sum
(rate(unpoller_device_vap_receive_packets_total{radio=\"ng\",site_name=~\"$Site\",name=~\"$AP\"}[$__interval]))
by (name)","interval":"$Smooth","legendFormat":"{{name}} In","refId":"B"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"2.4
GHz Packets","tooltip":{"msResolution":false,"shared":true,"sort":2,"value_type":"cumulative"},"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"decimals":1,"format":"pps","label":"PPS","logBase":1,"max":null,"min":null,"show":true},{"format":"pps","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","decimals":0,"description":"Visualize
packet errors (several types) per second in the 5GHz band.","editable":true,"error":false,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":0,"fillGradient":0,"gridPos":{"h":7,"w":12,"x":0,"y":86},"hiddenSeries":false,"id":57,"isNew":true,"legend":{"alignAsTable":true,"avg":false,"current":true,"hideEmpty":true,"max":true,"min":false,"rightSide":true,"show":true,"sort":"max","sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":1,"links":[],"nullPointMode":"connected","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","seriesOverrides":[{"alias":"/In$/","transform":"negative-Y"}],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"sum
(rate(unpoller_device_vap_receive_dropped_total{radio=\"na\",site_name=~\"$Site\",name=~\"$AP\"}[$__interval]))
by (name)","interval":"$Smooth","legendFormat":"{{name}} Drops Rx","refId":"A"},{"expr":"sum
(rate(unpoller_device_vap_transmit_dropped_total{radio=\"na\",site_name=~\"$Site\",name=~\"$AP\"}[$__interval]))
by (name)","interval":"$Smooth","legendFormat":"{{name}} Drops Tx","refId":"B"},{"expr":"sum
(rate(unpoller_device_vap_receive_errors_total{radio=\"na\",site_name=~\"$Site\",name=~\"$AP\"}[$__interval]))
by (name)","interval":"$Smooth","legendFormat":"{{name}} Errors Rx","refId":"C"},{"expr":"sum
(rate(unpoller_device_vap_transmit_errors_total{radio=\"na\",site_name=~\"$Site\",name=~\"$AP\"}[$__interval]))
by (name)","interval":"$Smooth","legendFormat":"{{name}} Errors Tx","refId":"D"},{"expr":"sum
(rate(unpoller_device_vap_receive_crypts_total{radio=\"na\",site_name=~\"$Site\",name=~\"$AP\"}[$__interval]))
by (name)","interval":"$Smooth","legendFormat":"{{name}} Crypts Rx","refId":"E"},{"expr":"sum
(rate(unpoller_device_vap_receive_frags_total{radio=\"na\",site_name=~\"$Site\",name=~\"$AP\"}[$__interval]))
by (name)","interval":"$Smooth","legendFormat":"{{name}} Frags Rx","refId":"F"},{"expr":"sum
(rate(unpoller_device_vap_receive_nwids_total{radio=\"na\",site_name=~\"$Site\",name=~\"$AP\"}[$__interval]))
by (name)","interval":"$Smooth","legendFormat":"{{name}} Nwids Rx","refId":"G"},{"expr":"sum
(rate(unpoller_device_vap_transmit_retries_total{radio=\"na\",site_name=~\"$Site\",name=~\"$AP\"}[$__interval]))
by (name)","interval":"$Smooth","legendFormat":"{{name}} Retries Tx","refId":"H"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"5
GHz Drops/Errors","tooltip":{"msResolution":false,"shared":true,"sort":2,"value_type":"cumulative"},"transparent":true,"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"decimals":1,"format":"pps","label":null,"logBase":1,"max":null,"min":null,"show":true},{"format":"short","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","decimals":0,"description":"In
is on the negative axis.","editable":true,"error":false,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":0,"fillGradient":0,"gridPos":{"h":7,"w":12,"x":12,"y":86},"hiddenSeries":false,"id":26,"isNew":true,"legend":{"alignAsTable":true,"avg":false,"current":true,"hideEmpty":true,"max":true,"min":false,"rightSide":true,"show":true,"sort":"max","sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":1,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","seriesOverrides":[{"alias":"/In$/","transform":"negative-Y"}],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"sum
(rate(unpoller_device_vap_receive_dropped_total{radio=\"ng\",site_name=~\"$Site\",name=~\"$AP\"}[$__interval]))
by (name)","interval":"$Smooth","legendFormat":"{{name}} Drops Rx","refId":"A"},{"expr":"sum
(rate(unpoller_device_vap_transmit_dropped_total{radio=\"ng\",site_name=~\"$Site\",name=~\"$AP\"}[$__interval]))
by (name)","interval":"$Smooth","legendFormat":"{{name}} Drops Tx","refId":"B"},{"expr":"sum
(rate(unpoller_device_vap_receive_errors_total{radio=\"ng\",site_name=~\"$Site\",name=~\"$AP\"}[$__interval]))
by (name)","interval":"$Smooth","legendFormat":"{{name}} Errors Rx","refId":"C"},{"expr":"sum
(rate(unpoller_device_vap_transmit_errors_total{radio=\"ng\",site_name=~\"$Site\",name=~\"$AP\"}[$__interval]))
by (name)","interval":"$Smooth","legendFormat":"{{name}} Errors Tx","refId":"D"},{"expr":"sum
(rate(unpoller_device_vap_receive_crypts_total{radio=\"ng\",site_name=~\"$Site\",name=~\"$AP\"}[$__interval]))
by (name)","interval":"$Smooth","legendFormat":"{{name}} Crypts Rx","refId":"E"},{"expr":"sum
(rate(unpoller_device_vap_receive_frags_total{radio=\"ng\",site_name=~\"$Site\",name=~\"$AP\"}[$__interval]))
by (name)","interval":"$Smooth","legendFormat":"{{name}} Frags Rx","refId":"F"},{"expr":"sum
(rate(unpoller_device_vap_receive_nwids_total{radio=\"ng\",site_name=~\"$Site\",name=~\"$AP\"}[$__interval]))
by (name)","interval":"$Smooth","legendFormat":"{{name}} Nwids Rx","refId":"G"},{"expr":"sum
(rate(unpoller_device_vap_transmit_retries_total{radio=\"ng\",site_name=~\"$Site\",name=~\"$AP\"}[$__interval]))
by (name)","interval":"$Smooth","legendFormat":"{{name}} Retries Tx","refId":"H"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"2.4
GHz Drops/Errors","tooltip":{"msResolution":false,"shared":true,"sort":2,"value_type":"cumulative"},"transparent":true,"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"decimals":1,"format":"pps","label":null,"logBase":1,"max":null,"min":null,"show":true},{"format":"short","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}}],"refresh":"1m","schemaVersion":25,"style":"dark","tags":["unifi","uap","unifi-poller"],"templating":{"list":[{"allValue":".*","current":{},"datasource":"VictoriaMetrics","definition":"label_values(unpoller_device_info{type=\"uap\"},source)","hide":2,"includeAll":true,"label":"","multi":true,"name":"Controller","options":[],"query":"label_values(unpoller_device_info{type=\"uap\"},source)","refresh":1,"regex":"","skipUrlSync":false,"sort":1,"tagValuesQuery":null,"tags":[],"tagsQuery":null,"type":"query","useTags":false},{"allValue":"","current":{},"datasource":"VictoriaMetrics","definition":"label_values(unpoller_device_info{source=~\"$Controller\",
type=\"uap\"},site_name)","hide":0,"includeAll":true,"label":"","multi":true,"name":"Site","options":[],"query":"label_values(unpoller_device_info{source=~\"$Controller\",
type=\"uap\"},site_name)","refresh":1,"regex":"","skipUrlSync":false,"sort":1,"tagValuesQuery":null,"tags":[],"tagsQuery":null,"type":"query","useTags":false},{"allValue":"","current":{},"datasource":"VictoriaMetrics","definition":"label_values(unpoller_device_info{site_name=~\"$Site\",
type=~\"uap|udm\",model!=\"UDMPRO\"},name)","hide":0,"includeAll":true,"label":"UniFi
AP:","multi":true,"name":"AP","options":[],"query":"label_values(unpoller_device_info{site_name=~\"$Site\",
type=~\"uap|udm\",model!=\"UDMPRO\"},name)","refresh":1,"regex":"","skipUrlSync":false,"sort":1,"tagValuesQuery":null,"tags":[],"tagsQuery":null,"type":"query","useTags":false},{"allValue":null,"current":{"selected":true,"tags":[],"text":"2m","value":"2m"},"hide":0,"includeAll":false,"label":null,"multi":false,"name":"Smooth","options":[{"selected":false,"text":"30s","value":"30s"},{"selected":false,"text":"1m","value":"1m"},{"selected":true,"text":"2m","value":"2m"},{"selected":false,"text":"5m","value":"5m"},{"selected":false,"text":"10m","value":"10m"},{"selected":false,"text":"15m","value":"15m"},{"selected":false,"text":"30m","value":"30m"},{"selected":false,"text":"1h","value":"1h"}],"query":"30s,1m,2m,5m,10m,15m,30m,1h","skipUrlSync":false,"type":"custom"}]},"time":{"from":"now-3h","to":"now"},"timepicker":{"nowDelay":"","refresh_intervals":["30s","1m","5m","15m","30m","1h","2h"],"time_options":["5m","15m","1h","6h","12h","24h","2d","7d","30d"]},"timezone":"browser","title":"UniFi-Poller:
UAP Insights - Prometheus","uid":"g5wFWqxZk","version":24}'
kind: ConfigMap
metadata:
labels:
app.kubernetes.io/part-of: unpoller
grafana_dashboard: "1"
name: unpoller-dashboard-uap-insights
namespace: monitoring
@@ -0,0 +1,181 @@
apiVersion: v1
data:
usg-insights.json: '{"annotations":{"list":[{"builtIn":1,"datasource":"-- Grafana
--","enable":true,"hide":true,"iconColor":"rgba(0, 211, 255, 1)","limit":100,"name":"Annotations
& Alerts","showIn":0,"type":"dashboard"}]},"description":"UniFi Poller v2.0.1
Displays detailed information for security gateways in a UniFi network using Prometheus.","editable":true,"gnetId":11313,"graphTooltip":2,"id":null,"iteration":1592125878109,"links":[{"asDropdown":true,"icon":"external
link","includeVars":false,"keepTime":true,"tags":["unifi-poller"],"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":[{"columns":[],"datasource":"VictoriaMetrics","editable":true,"error":false,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fontSize":"100%","gridPos":{"h":5,"w":24,"x":0,"y":0},"id":60,"isNew":true,"links":[],"pageSize":null,"scroll":false,"showHeader":true,"sort":{"col":11,"desc":true},"styles":[{"$$hashKey":"object:1420","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,"pattern":"Time","thresholds":[],"type":"hidden","unit":"short"},{"$$hashKey":"object:1421","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,"pattern":"Value #A","thresholds":[],"type":"hidden","unit":"dtdurations"},{"$$hashKey":"object:1422","alias":"Name","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,"link":false,"linkTargetBlank":true,"linkUrl":"http:","pattern":"name","preserveFormat":false,"sanitize":false,"thresholds":[],"type":"string","unit":"short"},{"$$hashKey":"object:1424","alias":"Model","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,"pattern":"model","thresholds":[],"type":"string","unit":"short"},{"$$hashKey":"object:1425","alias":"Device
MAC","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,"pattern":"mac","thresholds":[],"type":"string","unit":"short"},{"$$hashKey":"object:1426","alias":"Unifi
Serial #","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,"pattern":"serial","thresholds":[],"type":"string","unit":"short"},{"$$hashKey":"object:1427","alias":"Site","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,"pattern":"site_name","thresholds":[],"type":"string","unit":"short"},{"$$hashKey":"object:1428","alias":"Version","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,"pattern":"version","thresholds":[],"type":"string","unit":"short"},{"$$hashKey":"object:1432","alias":"Address","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":"ip","thresholds":[],"type":"string","unit":"short"},{"$$hashKey":"object:1433","alias":"Data","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 #C","thresholds":[],"type":"number","unit":"decbytes"},{"$$hashKey":"object:1434","alias":"Uptime","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 #B","thresholds":[],"type":"number","unit":"s"},{"$$hashKey":"object:1435","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":"string","unit":"short"},{"$$hashKey":"object:1436","alias":"Type","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":"type","thresholds":[],"type":"string","unit":"short"}],"targets":[{"expr":"sum
by (ip,mac,model,name,serial,site_name,type,version,source) (unpoller_device_info{site_name=~\"$Site\",
name=~\"$Gateway\"})","format":"table","instant":true,"interval":"","legendFormat":"","refId":"A"},{"expr":"sum
by (ip,mac,model,name,serial,site_name,type,version,source) (unpoller_device_uptime_seconds{site_name=~\"$Site\",
name=~\"$Gateway\"})","format":"table","instant":true,"interval":"","legendFormat":"","refId":"B"},{"expr":"sum
by (ip,mac,model,name,serial,site_name,type,version,source) (unpoller_device_bytes_total{site_name=~\"$Site\",
name=~\"$Gateway\"})","format":"table","instant":true,"interval":"","legendFormat":"","refId":"C"}],"timeFrom":null,"title":"Gateway
Details","transform":"table","type":"table-old"},{"collapsed":true,"datasource":"${DS_UNIFI_POLLER}","gridPos":{"h":1,"w":24,"x":0,"y":5},"id":50,"panels":[{"cacheTimeout":null,"datasource":"VictoriaMetrics","description":"","fieldConfig":{"defaults":{"custom":{},"mappings":[{"id":0,"op":"=","text":"N/A","type":1,"value":"null"}],"min":0,"nullValueMode":"connected","thresholds":{"mode":"absolute","steps":[{"color":"dark-purple","value":null}]},"unit":"s"},"overrides":[]},"gridPos":{"h":3,"w":4,"x":0,"y":6},"hideTimeOverride":false,"id":64,"links":[],"options":{"colorMode":"value","graphMode":"area","justifyMode":"auto","orientation":"horizontal","reduceOptions":{"calcs":["mean"],"fields":"","values":false}},"pluginVersion":"7.0.3","scopedVars":{"Site":{"selected":false}},"targets":[{"expr":"unpoller_device_uptime_seconds{site_name=~\"$Site\",
name=~\"$Gateway\"}","instant":false,"interval":"$Smooth","legendFormat":"{{name}}
Uptime","refId":"B"}],"timeFrom":null,"timeShift":null,"title":"","transparent":true,"type":"stat"},{"cacheTimeout":null,"datasource":"VictoriaMetrics","description":"","fieldConfig":{"defaults":{"custom":{},"mappings":[{"id":0,"op":"=","text":"N/A","type":1,"value":"null"}],"max":100,"min":0,"nullValueMode":"connected","thresholds":{"mode":"absolute","steps":[{"color":"dark-purple","value":null}]},"unit":"Mbits"},"overrides":[]},"gridPos":{"h":9,"w":6,"x":4,"y":6},"hideTimeOverride":false,"id":44,"links":[],"options":{"colorMode":"value","graphMode":"area","justifyMode":"auto","orientation":"horizontal","reduceOptions":{"calcs":["lastNotNull"],"fields":"","values":false}},"pluginVersion":"7.0.3","scopedVars":{"Site":{"selected":false}},"targets":[{"expr":"unpoller_device_speedtest_upload{site_name=~\"$Site\",
name=~\"$Gateway\"}","instant":false,"interval":"$Smooth","legendFormat":"{{name}}
Upload","refId":"A"},{"expr":"unpoller_device_speedtest_download{site_name=~\"$Site\",
name=~\"$Gateway\"}","instant":false,"interval":"$Smooth","legendFormat":"{{name}}
Download","refId":"B"}],"timeFrom":null,"timeShift":null,"title":"Speed Test","transparent":true,"type":"stat"},{"cacheTimeout":null,"datasource":"VictoriaMetrics","description":"","fieldConfig":{"defaults":{"custom":{},"displayName":"${__series.name}","links":[],"mappings":[{"id":0,"op":"=","text":"N/A","type":1,"value":"null"}],"nullValueMode":"connected","thresholds":{"mode":"absolute","steps":[{"color":"dark-purple","value":null}]},"unit":"s"},"overrides":[]},"gridPos":{"h":9,"w":9,"x":10,"y":6},"hideTimeOverride":false,"id":63,"links":[],"options":{"colorMode":"value","graphMode":"area","justifyMode":"auto","orientation":"horizontal","reduceOptions":{"calcs":["lastNotNull"],"fields":"","values":false}},"pluginVersion":"7.0.3","scopedVars":{"Site":{"selected":false}},"targets":[{"expr":"sum
by (name) (unpoller_device_speedtest_runtime_seconds{site_name=~\"$Site\", name=~\"$Gateway\"})","instant":false,"interval":"$Smooth","legendFormat":"{{name}}
Test Time","refId":"A"},{"expr":"sum by (name) (unpoller_device_uplink_latency_seconds{site_name=~\"$Site\",
name=~\"$Gateway\"})","instant":false,"interval":"$Smooth","legendFormat":"{{name}}
Uplink Latency","refId":"C"}],"timeFrom":null,"timeShift":null,"title":"","transparent":true,"type":"stat"},{"cacheTimeout":null,"datasource":"VictoriaMetrics","fieldConfig":{"defaults":{"custom":{},"mappings":[{"id":0,"op":"=","text":"N/A","type":1,"value":"null"}],"nullValueMode":"connected","thresholds":{"mode":"absolute","steps":[{"color":"dark-purple","value":null},{"color":"rgba(237,
129, 40, 0.89)","value":50},{"color":"#d44a3a","value":80}]},"unit":"percentunit"},"overrides":[]},"gridPos":{"h":9,"w":5,"x":19,"y":6},"hideTimeOverride":false,"id":37,"links":[],"options":{"colorMode":"value","graphMode":"area","justifyMode":"auto","orientation":"horizontal","reduceOptions":{"calcs":["lastNotNull"],"fields":"","values":false}},"pluginVersion":"7.0.3","scopedVars":{"Site":{"selected":false}},"targets":[{"expr":"unpoller_device_cpu_utilization_ratio{site_name=~\"$Site\",
name=~\"$Gateway\"}","instant":false,"interval":"$Smooth","legendFormat":"{{name}}
CPU %","refId":"A"},{"expr":"unpoller_device_memory_utilization_ratio{site_name=~\"$Site\",
name=~\"$Gateway\"}","instant":false,"interval":"$Smooth","legendFormat":"{{name}}
RAM %","refId":"B"}],"timeFrom":null,"timeShift":null,"title":"","transparent":true,"type":"stat"},{"cacheTimeout":null,"colorBackground":false,"colorPostfix":true,"colorValue":true,"colors":["#FA6400","rgba(237,
129, 40, 0.89)","#d44a3a"],"datasource":"VictoriaMetrics","decimals":0,"description":"WAN
Port Speed","fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"format":"none","gauge":{"maxValue":100,"minValue":0,"show":false,"thresholdLabels":true,"thresholdMarkers":true},"gridPos":{"h":2,"w":2,"x":0,"y":9},"hideTimeOverride":true,"id":46,"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":"M","postfixFontSize":"50%","prefix":"","prefixFontSize":"50%","rangeMaps":[{"from":"null","text":"N/A","to":"null"}],"scopedVars":{"Site":{"selected":false}},"sparkline":{"fillColor":"rgba(31,
118, 189, 0.18)","full":false,"lineColor":"rgb(31, 120, 193)","show":false},"tableColumn":"unpoller_device_uplink_speed_mbps{instance=\"UniFi-Poller:9130\",
job=\"unpoller\", name=\"gateway\", port=\"all\", site_name=\"Home (default)\",
source=\"https://unifi-controller:8443\"}","targets":[{"expr":"unpoller_device_uplink_speed_mbps{site_name=~\"$Site\",
name=~\"$Gateway\"}","instant":true,"refId":"A"}],"thresholds":"","timeFrom":null,"title":"Uplink","transparent":true,"type":"singlestat","valueFontSize":"50%","valueMaps":[{"op":"=","text":"N/A","value":"null"}],"valueName":"current"},{"cacheTimeout":null,"colorBackground":false,"colorValue":true,"colors":["#5794F2","rgba(237,
129, 40, 0.89)","#d44a3a"],"datasource":"VictoriaMetrics","decimals":0,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"format":"none","gauge":{"maxValue":100,"minValue":0,"show":false,"thresholdLabels":true,"thresholdMarkers":true},"gridPos":{"h":2,"w":2,"x":2,"y":9},"hideTimeOverride":true,"id":52,"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"}],"scopedVars":{"Site":{"selected":false}},"sparkline":{"fillColor":"rgba(31,
118, 189, 0.18)","full":false,"lineColor":"rgb(31, 120, 193)","show":true},"tableColumn":"unpoller_device_stations{instance=\"UniFi-Poller:9130\",
job=\"unpoller\", name=\"gateway\", site_name=\"Home (default)\", source=\"https://unifi-controller:8443\",
station_type=\"desktop\", type=\"ugw\"}","targets":[{"expr":"unpoller_device_stations{site_name=~\"$Site\",
name=~\"$Gateway\",station_type=\"desktop\"}","instant":true,"interval":"$Smooth","refId":"A"}],"thresholds":"","timeFrom":null,"title":"Desktop","transparent":true,"type":"singlestat","valueFontSize":"80%","valueMaps":[{"op":"=","text":"N/A","value":"null"}],"valueName":"current"},{"cacheTimeout":null,"colorBackground":false,"colorValue":true,"colors":["#5794F2","rgba(237,
129, 40, 0.89)","#d44a3a"],"datasource":"VictoriaMetrics","decimals":0,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"format":"none","gauge":{"maxValue":100,"minValue":0,"show":false,"thresholdLabels":true,"thresholdMarkers":true},"gridPos":{"h":2,"w":2,"x":0,"y":11},"hideTimeOverride":true,"id":38,"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"}],"scopedVars":{"Site":{"selected":false}},"sparkline":{"fillColor":"rgba(31,
118, 189, 0.18)","full":false,"lineColor":"rgb(31, 120, 193)","show":true},"tableColumn":"unpoller_device_stations{instance=\"UniFi-Poller:9130\",
job=\"unpoller\", name=\"gateway\", site_name=\"Home (default)\", source=\"https://unifi-controller:8443\",
station_type=\"user\", type=\"ugw\"}","targets":[{"expr":"unpoller_device_stations{site_name=~\"$Site\",
name=~\"$Gateway\",station_type=\"user\"}","instant":true,"refId":"A"}],"thresholds":"","timeFrom":null,"title":"Users","transparent":true,"type":"singlestat","valueFontSize":"80%","valueMaps":[{"op":"=","text":"N/A","value":"null"}],"valueName":"current"},{"cacheTimeout":null,"colorBackground":false,"colorValue":true,"colors":["#5794F2","rgba(237,
129, 40, 0.89)","#d44a3a"],"datasource":"VictoriaMetrics","decimals":0,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"format":"none","gauge":{"maxValue":100,"minValue":0,"show":false,"thresholdLabels":true,"thresholdMarkers":true},"gridPos":{"h":2,"w":2,"x":2,"y":11},"hideTimeOverride":true,"id":53,"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"}],"scopedVars":{"Site":{"selected":false}},"sparkline":{"fillColor":"rgba(31,
118, 189, 0.18)","full":false,"lineColor":"rgb(31, 120, 193)","show":true},"tableColumn":"unpoller_device_stations{instance=\"UniFi-Poller:9130\",
job=\"unpoller\", name=\"gateway\", site_name=\"Home (default)\", source=\"https://unifi-controller:8443\",
station_type=\"mobile\", type=\"ugw\"}","targets":[{"expr":"unpoller_device_stations{site_name=~\"$Site\",
name=~\"$Gateway\",station_type=\"mobile\"}","instant":true,"interval":"$Smooth","refId":"A"}],"thresholds":"","timeFrom":null,"title":"Mobile","transparent":true,"type":"singlestat","valueFontSize":"80%","valueMaps":[{"op":"=","text":"N/A","value":"null"}],"valueName":"current"},{"cacheTimeout":null,"colorBackground":false,"colorValue":true,"colors":["#FADE2A","rgba(237,
129, 40, 0.89)","#d44a3a"],"datasource":"VictoriaMetrics","decimals":0,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"format":"none","gauge":{"maxValue":100,"minValue":0,"show":false,"thresholdLabels":true,"thresholdMarkers":true},"gridPos":{"h":2,"w":2,"x":0,"y":13},"hideTimeOverride":true,"id":39,"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"}],"scopedVars":{"Site":{"selected":false}},"sparkline":{"fillColor":"rgba(31,
118, 189, 0.18)","full":false,"lineColor":"rgb(31, 120, 193)","show":true},"tableColumn":"unpoller_device_stations{instance=\"UniFi-Poller:9130\",
job=\"unpoller\", name=\"gateway\", site_name=\"Home (default)\", source=\"https://unifi-controller:8443\",
station_type=\"guest\", type=\"ugw\"}","targets":[{"expr":"unpoller_device_stations{site_name=~\"$Site\",
name=~\"$Gateway\",station_type=\"guest\"}","instant":true,"refId":"A"}],"thresholds":"","timeFrom":null,"title":"Guests","transparent":true,"type":"singlestat","valueFontSize":"80%","valueMaps":[{"op":"=","text":"N/A","value":"null"}],"valueName":"current"},{"cacheTimeout":null,"colorBackground":false,"colorValue":true,"colors":["#5794F2","rgba(237,
129, 40, 0.89)","#d44a3a"],"datasource":"VictoriaMetrics","decimals":0,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"format":"none","gauge":{"maxValue":100,"minValue":0,"show":false,"thresholdLabels":true,"thresholdMarkers":true},"gridPos":{"h":2,"w":2,"x":2,"y":13},"hideTimeOverride":true,"id":54,"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"}],"scopedVars":{"Site":{"selected":false}},"sparkline":{"fillColor":"rgba(31,
118, 189, 0.18)","full":false,"lineColor":"rgb(31, 120, 193)","show":true},"tableColumn":"unpoller_device_stations{instance=\"UniFi-Poller:9130\",
job=\"unpoller\", name=\"gateway\", site_name=\"Home (default)\", source=\"https://unifi-controller:8443\",
station_type=\"handheld\", type=\"ugw\"}","targets":[{"expr":"unpoller_device_stations{site_name=~\"$Site\",
name=~\"$Gateway\",station_type=\"handheld\"}","instant":true,"interval":"$Smooth","refId":"A"}],"thresholds":"","timeFrom":null,"title":"Handheld","transparent":true,"type":"singlestat","valueFontSize":"80%","valueMaps":[{"op":"=","text":"N/A","value":"null"}],"valueName":"current"},{"aliasColors":{"gateway
load1":"dark-purple","gateway load15":"dark-green"},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","editable":true,"error":false,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":1,"fillGradient":0,"gridPos":{"h":10,"w":24,"x":0,"y":15},"hiddenSeries":false,"id":56,"isNew":true,"legend":{"alignAsTable":false,"avg":false,"current":false,"max":true,"min":false,"rightSide":false,"show":true,"sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":1,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","scopedVars":{"Site":{"selected":false}},"seriesOverrides":[{"alias":"/load15$/","fill":0,"lines":true,"linewidth":6},{}],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"unpoller_device_load_average_1{site_name=~\"$Site\",
name=~\"$Gateway\"}","interval":"$Smooth","legendFormat":"{{name}} load1","refId":"A"},{"expr":"unpoller_device_load_average_5{site_name=~\"$Site\",
name=~\"$Gateway\"}","hide":true,"interval":"$Smooth","legendFormat":"{{name}}
load5","refId":"B"},{"expr":"unpoller_device_load_average_15{site_name=~\"$Site\",
name=~\"$Gateway\"}","interval":"$Smooth","legendFormat":"{{name}} load15","refId":"C"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"USG
Load Average","tooltip":{"msResolution":false,"shared":true,"sort":2,"value_type":"cumulative"},"transparent":true,"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"format":"none","label":null,"logBase":1,"max":null,"min":null,"show":true},{"format":"short","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{"gateway
wan Bytes Rx":"dark-green","gateway wan Bytes Tx":"dark-purple"},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","description":"Spikes
on this graph that are missing from the LAN graph indicate gateway-originated
traffic, like a scheduled speed test. Rx is on the negative axis.","editable":true,"error":false,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":1,"fillGradient":0,"gridPos":{"h":11,"w":12,"x":0,"y":25},"hiddenSeries":false,"id":3,"isNew":true,"legend":{"alignAsTable":true,"avg":false,"current":true,"hideEmpty":true,"max":true,"min":false,"show":true,"sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":3,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","scopedVars":{"Site":{"selected":false}},"seriesOverrides":[{"alias":"/Rx$/","transform":"negative-Y"}],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"rate(unpoller_device_wan_receive_bytes_total{site_name=~\"$Site\",
name=~\"$Gateway\"}[$__interval])","interval":"$Smooth","legendFormat":"{{name}}
{{port}} Bytes Rx","refId":"A"},{"expr":"rate(unpoller_device_wan_transmit_bytes_total{site_name=~\"$Site\",
name=~\"$Gateway\"}[$__interval])","interval":"$Smooth","legendFormat":"{{name}}
{{port}} Bytes Tx","refId":"B"},{"expr":"unpoller_device_wan_transmit_rate_bytes{site_name=~\"$Site\",
name=~\"$Gateway\"}","hide":true,"interval":"$Smooth","legendFormat":"{{name}}
{{port}} Bytes Tx","refId":"C"},{"expr":"unpoller_device_wan_receive_rate_bytes{site_name=~\"$Site\",
name=~\"$Gateway\"}","hide":true,"interval":"$Smooth","legendFormat":"{{name}}
{{port}} Bytes Rx","refId":"D"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"WAN
Throughput","tooltip":{"msResolution":false,"shared":true,"sort":2,"value_type":"cumulative"},"transparent":true,"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"format":"Bps","label":"bytes
/ second","logBase":1,"max":null,"min":null,"show":true},{"format":"short","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{"gateway
lan Bytes Rx":"dark-green","gateway lan Bytes Tx":"dark-purple"},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","description":"Spikes
on this graph that do not appear on the WAN graph indicate inter-VLAN-routing.
Rx is on the negative axis.","editable":true,"error":false,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":1,"fillGradient":0,"gridPos":{"h":11,"w":12,"x":12,"y":25},"hiddenSeries":false,"id":35,"isNew":true,"legend":{"alignAsTable":true,"avg":false,"current":true,"hideEmpty":true,"max":true,"min":false,"show":true,"sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":3,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","scopedVars":{"Site":{"selected":false}},"seriesOverrides":[{"alias":"/Rx$/","transform":"negative-Y"}],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"rate(unpoller_device_lan_receive_bytes_total{site_name=~\"$Site\",
name=~\"$Gateway\"}[$__interval])","interval":"$Smooth","legendFormat":"{{name}}
{{port}} Bytes Rx","refId":"A"},{"expr":"rate(unpoller_device_lan_transmit_bytes_total{site_name=~\"$Site\",
name=~\"$Gateway\"}[$__interval])","interval":"$Smooth","legendFormat":"{{name}}
{{port}} Bytes Tx","refId":"B"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"LAN
Throughput","tooltip":{"msResolution":false,"shared":true,"sort":2,"value_type":"cumulative"},"transparent":true,"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"format":"Bps","label":"bytes
/ second","logBase":1,"max":null,"min":null,"show":true},{"format":"short","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{"gateway
wan Packets Rx":"dark-green","gateway wan Packets Tx":"dark-purple"},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","decimals":null,"description":"PPS
on the WAN interface. Rx is on the negative axis.","editable":true,"error":false,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":1,"fillGradient":0,"gridPos":{"h":9,"w":12,"x":0,"y":36},"hiddenSeries":false,"id":36,"isNew":true,"legend":{"alignAsTable":true,"avg":false,"current":true,"hideEmpty":true,"max":true,"min":false,"rightSide":false,"show":true,"sort":"max","sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":3,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","scopedVars":{"Site":{"selected":false}},"seriesOverrides":[{"alias":"/Rx$/","transform":"negative-Y"}],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"rate(unpoller_device_wan_receive_packets_total{site_name=~\"$Site\",
name=~\"$Gateway\"}[$__interval])","interval":"$Smooth","legendFormat":"{{name}}
{{port}} Packets Rx","refId":"A"},{"expr":"rate(unpoller_device_wan_transmit_packets_total{site_name=~\"$Site\",
name=~\"$Gateway\"}[$__interval])","interval":"$Smooth","legendFormat":"{{name}}
{{port}} Packets Tx","refId":"B"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"WAN
Packets","tooltip":{"msResolution":false,"shared":true,"sort":2,"value_type":"cumulative"},"transparent":true,"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"decimals":null,"format":"pps","label":"packets
/ second","logBase":1,"max":null,"min":null,"show":true},{"format":"pps","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{"gateway
lan Packets Rx":"dark-green","gateway lan Packets Tx":"dark-purple"},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","decimals":null,"description":"PPS
on the LAN interface. Rx is on the negative axis.","editable":true,"error":false,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":1,"fillGradient":0,"gridPos":{"h":9,"w":12,"x":12,"y":36},"hiddenSeries":false,"id":25,"isNew":true,"legend":{"alignAsTable":true,"avg":false,"current":true,"hideEmpty":true,"max":true,"min":false,"rightSide":false,"show":true,"sort":"max","sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":3,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","scopedVars":{"Site":{"selected":false}},"seriesOverrides":[{"alias":"/Rx$/","transform":"negative-Y"}],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"rate(unpoller_device_lan_receive_packets_total{site_name=~\"$Site\",
name=~\"$Gateway\"}[$__interval])","interval":"$Smooth","legendFormat":"{{name}}
{{port}} Packets Rx","refId":"A"},{"expr":"rate(unpoller_device_lan_transmit_packets_total{site_name=~\"$Site\",
name=~\"$Gateway\"}[$__interval])","interval":"$Smooth","legendFormat":"{{name}}
{{port}} Packets Tx","refId":"B"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"LAN
Packets","tooltip":{"msResolution":false,"shared":true,"sort":2,"value_type":"cumulative"},"transparent":true,"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"decimals":null,"format":"pps","label":"packets
/ second","logBase":1,"max":null,"min":null,"show":true},{"format":"pps","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{"gateway
wan Multicast Rx":"dark-green","gateway wan Broadcast Rx":"dark-blue","gateway
wan Broadcast Tx":"dark-yellow","gateway wan Multicast Tx":"dark-purple"},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","decimals":2,"description":"","editable":true,"error":false,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":2,"fillGradient":0,"gridPos":{"h":8,"w":24,"x":0,"y":45},"hiddenSeries":false,"id":47,"isNew":true,"legend":{"alignAsTable":true,"avg":true,"current":true,"hideEmpty":true,"max":true,"min":false,"rightSide":true,"show":true,"sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":3,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","scopedVars":{"Site":{"selected":false}},"seriesOverrides":[{"alias":"/Rx$/","transform":"negative-Y"}],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"rate(unpoller_device_wan_transmit_broadcast_total{site_name=~\"$Site\",
name=~\"$Gateway\"}[$__interval])","interval":"$Smooth","legendFormat":"{{name}}
{{port}} Broadcast Tx","refId":"D"},{"expr":"rate(unpoller_device_wan_receive_broadcast_total{site_name=~\"$Site\",
name=~\"$Gateway\"}[$__interval])","interval":"$Smooth","legendFormat":"{{name}}
{{port}} Broadcast Rx","refId":"C"},{"expr":"rate(unpoller_device_wan_receive_multicast_total{site_name=~\"$Site\",
name=~\"$Gateway\"}[$__interval])","interval":"$Smooth","legendFormat":"{{name}}
{{port}} Multicast Rx","refId":"A"},{"expr":"rate(unpoller_device_wan_transmit_multicast_total{site_name=~\"$Site\",
name=~\"$Gateway\"}[$__interval])","interval":"$Smooth","legendFormat":"{{name}}
{{port}} Multicast Tx","refId":"B"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"WAN
Multicast & Broadcast","tooltip":{"msResolution":false,"shared":true,"sort":2,"value_type":"cumulative"},"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"decimals":null,"format":"pps","label":"packets
/ second","logBase":1,"max":null,"min":null,"show":true},{"format":"short","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{"gateway
wan Drops Rx":"dark-green","gateway wan Drops Tx":"dark-purple","gateway wan Errors
Rx":"dark-blue","gateway wan Errors Tx":"dark-yellow"},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","decimals":null,"description":"May
show problems with your WAN interface. Rx on negative axis.","editable":true,"error":false,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":2,"fillGradient":0,"gridPos":{"h":9,"w":12,"x":0,"y":53},"hiddenSeries":false,"id":48,"isNew":true,"legend":{"alignAsTable":true,"avg":false,"current":true,"hideEmpty":true,"max":true,"min":false,"rightSide":false,"show":true,"sort":null,"sortDesc":null,"total":true,"values":true},"lines":true,"linewidth":2,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","scopedVars":{"Site":{"selected":false}},"seriesOverrides":[{"alias":"/Rx$/","transform":"negative-Y"}],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"rate(unpoller_device_wan_transmit_dropped_total{site_name=~\"$Site\",
name=~\"$Gateway\"}[$__interval])","interval":"$Smooth","legendFormat":"{{name}}
{{port}} Drops Tx","refId":"A"},{"expr":"rate(unpoller_device_wan_receive_dropped_total{site_name=~\"$Site\",
name=~\"$Gateway\"}[$__interval])","interval":"$Smooth","legendFormat":"{{name}}
{{port}} Drops Rx","refId":"B"},{"expr":"rate(unpoller_device_wan_transmit_errors_total{site_name=~\"$Site\",
name=~\"$Gateway\"}[$__interval])","interval":"$Smooth","legendFormat":"{{name}}
{{port}} Errors Tx","refId":"C"},{"expr":"rate(unpoller_device_wan_receive_errors_total{site_name=~\"$Site\",
name=~\"$Gateway\"}[$__interval])","interval":"$Smooth","legendFormat":"{{name}}
{{port}} Errors Rx","refId":"D"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"WAN
Drops & Errors","tooltip":{"msResolution":false,"shared":true,"sort":2,"value_type":"cumulative"},"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"decimals":null,"format":"pps","label":"packets
/ second","logBase":1,"max":null,"min":null,"show":true},{"format":"short","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{"gateway
lan Dropped Rx":"dark-green"},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","decimals":null,"description":"","editable":true,"error":false,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":1,"fillGradient":0,"gridPos":{"h":9,"w":12,"x":12,"y":53},"hiddenSeries":false,"id":51,"isNew":true,"legend":{"alignAsTable":true,"avg":false,"current":true,"hideEmpty":true,"max":true,"min":false,"rightSide":false,"show":true,"sort":"max","sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":3,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","scopedVars":{"Site":{"selected":false}},"seriesOverrides":[{"alias":"/Rx$/","transform":"negative-Y"}],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"rate(unpoller_device_lan_receive_dropped_total{site_name=~\"$Site\",
name=~\"$Gateway\"}[$__interval])","hide":false,"interval":"$Smooth","legendFormat":"{{name}}
{{port}} Dropped Rx","refId":"A"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"LAN
Drops","tooltip":{"msResolution":false,"shared":true,"sort":2,"value_type":"cumulative"},"transparent":true,"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"decimals":null,"format":"pps","label":"packets
/ second","logBase":1,"max":null,"min":null,"show":true},{"format":"pps","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}}],"repeat":"Site","title":"Site:
$Site","type":"row"},{"collapsed":true,"datasource":"${DS_UNIFI_POLLER}","gridPos":{"h":1,"w":24,"x":0,"y":6},"id":62,"panels":[],"title":"Purposely
Empty Row","type":"row"}],"refresh":"1m","schemaVersion":25,"style":"dark","tags":["unifi","unifi-poller","usg"],"templating":{"list":[{"allValue":".*","current":{},"datasource":"VictoriaMetrics","definition":"label_values(unpoller_device_info{type=~\"udm|usg|ugw\"},source)","hide":2,"includeAll":true,"label":"","multi":true,"name":"Controller","options":[],"query":"label_values(unpoller_device_info{type=~\"udm|usg|ugw\"},source)","refresh":1,"regex":"","skipUrlSync":false,"sort":1,"tagValuesQuery":null,"tags":[],"tagsQuery":null,"type":"query","useTags":false},{"allValue":"","current":{},"datasource":"VictoriaMetrics","definition":"label_values(unpoller_device_info{source=~\"$Controller\",
type=~\"udm|usg|ugw\"},site_name)","hide":0,"includeAll":true,"label":"","multi":true,"name":"Site","options":[],"query":"label_values(unpoller_device_info{source=~\"$Controller\",
type=~\"udm|usg|ugw\"},site_name)","refresh":1,"regex":"","skipUrlSync":false,"sort":1,"tagValuesQuery":null,"tags":[],"tagsQuery":null,"type":"query","useTags":false},{"allValue":"","current":{},"datasource":"VictoriaMetrics","definition":"label_values(unpoller_device_info{site_name=~\"$Site\",
type=~\"udm|usg|ugw\"},name)","hide":2,"includeAll":true,"label":"","multi":true,"name":"Gateway","options":[],"query":"label_values(unpoller_device_info{site_name=~\"$Site\",
type=~\"udm|usg|ugw\"},name)","refresh":1,"regex":"","skipUrlSync":false,"sort":1,"tagValuesQuery":null,"tags":[],"tagsQuery":null,"type":"query","useTags":false},{"allValue":null,"current":{"tags":[],"text":"2m","value":"2m"},"hide":0,"includeAll":false,"label":null,"multi":false,"name":"Smooth","options":[{"selected":false,"text":"30s","value":"30s"},{"selected":false,"text":"1m","value":"1m"},{"selected":true,"text":"2m","value":"2m"},{"selected":false,"text":"5m","value":"5m"},{"selected":false,"text":"10m","value":"10m"},{"selected":false,"text":"15m","value":"15m"}],"query":"30s,1m,2m,5m,10m,15m","skipUrlSync":false,"type":"custom"}]},"time":{"from":"now-3h","to":"now"},"timepicker":{"nowDelay":"","refresh_intervals":["30s","1m","5m","15m","30m","1h","2h"],"time_options":["5m","15m","1h","6h","12h","24h","2d","7d","30d"]},"timezone":"browser","title":"UniFi-Poller:
USG Insights - Prometheus","uid":"4Yo8IZ-Wk","version":36}'
kind: ConfigMap
metadata:
labels:
app.kubernetes.io/part-of: unpoller
grafana_dashboard: "1"
name: unpoller-dashboard-usg-insights
namespace: monitoring
@@ -0,0 +1,236 @@
apiVersion: v1
data:
usw-insights.json: '{"annotations":{"list":[{"builtIn":1,"datasource":"-- Grafana
--","enable":true,"hide":true,"iconColor":"rgba(0, 211, 255, 1)","name":"Annotations
& Alerts","type":"dashboard"}]},"description":"UniFi Poller v2.0.1 Displays detailed
information for network switches in a UniFi network using Prometheus.","editable":true,"gnetId":11312,"graphTooltip":1,"id":null,"iteration":1592125490470,"links":[{"asDropdown":true,"icon":"external
link","includeVars":false,"keepTime":true,"tags":["unifi-poller"],"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":[{"collapsed":false,"datasource":"${DS_UNIFI_POLLER}","gridPos":{"h":1,"w":24,"x":0,"y":0},"id":137,"panels":[],"title":"Aggregate
Graphs","type":"row"},{"columns":[],"datasource":"VictoriaMetrics","description":"If
you have access points and gateways they will also show up here because they have
switch ports.","editable":true,"error":false,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fontSize":"100%","gridPos":{"h":6,"w":24,"x":0,"y":1},"id":2297,"isNew":true,"links":[],"pageSize":null,"scroll":false,"showHeader":true,"sort":{"col":11,"desc":true},"styles":[{"$$hashKey":"object:10978","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,"pattern":"Time","thresholds":[],"type":"hidden","unit":"short"},{"$$hashKey":"object:10979","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,"pattern":"Value #A","thresholds":[],"type":"hidden","unit":"dtdurations"},{"$$hashKey":"object:10980","alias":"Name","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,"link":false,"linkTargetBlank":true,"linkUrl":"http:","pattern":"name","preserveFormat":false,"sanitize":false,"thresholds":[],"type":"string","unit":"short"},{"$$hashKey":"object:10982","alias":"Model","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,"pattern":"model","thresholds":[],"type":"string","unit":"short"},{"$$hashKey":"object:10983","alias":"Device
MAC","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,"pattern":"mac","thresholds":[],"type":"string","unit":"short"},{"$$hashKey":"object:10984","alias":"UniFi
Serial #","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,"pattern":"serial","thresholds":[],"type":"string","unit":"short"},{"$$hashKey":"object:10985","alias":"Site","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,"pattern":"site_name","thresholds":[],"type":"string","unit":"short"},{"$$hashKey":"object:10986","alias":"Version","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,"pattern":"version","thresholds":[],"type":"string","unit":"short"},{"$$hashKey":"object:10990","alias":"IP","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":"ip","thresholds":[],"type":"string","unit":"short"},{"$$hashKey":"object:10991","alias":"Type","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":"type","thresholds":[],"type":"string","unit":"short"},{"$$hashKey":"object:10992","alias":"Data","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 #C","thresholds":[],"type":"number","unit":"decbytes"},{"$$hashKey":"object:10993","alias":"Uptime","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 #B","thresholds":[],"type":"number","unit":"s"},{"$$hashKey":"object:10994","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"}],"targets":[{"expr":"sum
by (ip,mac,model,name,serial,site_name,type,version,source) (unpoller_device_info{site_name=~\"$Site\",
name=~\"$Switch\"})","format":"table","instant":true,"interval":"","legendFormat":"","refId":"A"},{"expr":"sum
by (ip,mac,model,name,serial,site_name,type,version,source) (unpoller_device_uptime_seconds{site_name=~\"$Site\",
name=~\"$Switch\"})","format":"table","instant":true,"interval":"","legendFormat":"","refId":"B"},{"expr":"sum
by (ip,mac,model,name,serial,site_name,type,version,source) (unpoller_device_bytes_total{site_name=~\"$Site\",
name=~\"$Switch\"})","format":"table","instant":true,"interval":"","legendFormat":"","refId":"C"}],"timeFrom":null,"title":"Switch
Details","transform":"table","type":"table-old"},{"aliasColors":{"switch C":"dark-green","switch
F":"dark-purple"},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","decimals":1,"description":"","fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":1,"fillGradient":0,"gridPos":{"h":7,"w":16,"x":0,"y":7},"hiddenSeries":false,"id":1149,"legend":{"alignAsTable":true,"avg":false,"current":true,"hideEmpty":true,"hideZero":true,"max":true,"min":false,"show":true,"total":false,"values":true},"lines":true,"linewidth":1,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":2,"points":false,"renderer":"flot","seriesOverrides":[{"$$hashKey":"object:11469","alias":"/F$/","yaxis":2}],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"sum
by (name,temp_area,temp_type) (unpoller_device_temperature_celsius{site_name=~\"$Site\",name=~\"$Switch\"})","interval":"$Smooth","legendFormat":"{{name}}
{{temp_area}} {{temp_type}} C ","refId":"A"},{"expr":"sum by (name,temp_area,temp_type)
(unpoller_device_temperature_celsius{site_name=~\"$Site\",name=~\"$Switch\"}*9/5+32)","hide":false,"instant":false,"interval":"$Smooth","legendFormat":"{{name}}
{{temp_area}} {{temp_type}} F","refId":"B"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"Device
Temperature(s)","tooltip":{"shared":true,"sort":0,"value_type":"individual"},"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"$$hashKey":"object:11514","decimals":1,"format":"celsius","label":"Celcius","logBase":1,"max":null,"min":null,"show":true},{"$$hashKey":"object:11515","decimals":1,"format":"fahrenheit","label":"Farenheit","logBase":1,"max":null,"min":null,"show":true}],"yaxis":{"align":false,"alignLevel":-32}},{"aliasColors":{"switch":"dark-purple"},"bars":false,"cacheTimeout":null,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","decimals":0,"description":"","fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":0,"fillGradient":0,"gridPos":{"h":7,"w":8,"x":16,"y":7},"hiddenSeries":false,"hideTimeOverride":true,"id":1859,"interval":"","legend":{"avg":false,"current":false,"hideEmpty":true,"max":true,"min":false,"show":true,"total":false,"values":true},"lines":true,"linewidth":2,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":2,"points":false,"renderer":"flot","seriesOverrides":[],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"unpoller_device_memory_utilization_ratio{type=\"usw\",
site_name=~\"$Site\",name=~\"$Switch\",type=~\"usw|udm|udmp\"}","interval":"$Smooth","legendFormat":"{{name}}","refId":"A"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"Memory","tooltip":{"shared":true,"sort":2,"value_type":"individual"},"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"decimals":1,"format":"percentunit","label":"Memory
Utilization","logBase":1,"max":"1","min":"0","show":true},{"decimals":null,"format":"short","label":"","logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{"switch
load1":"dark-green","switch load15":"semi-dark-purple","switch load5":"dark-blue"},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","editable":true,"error":false,"fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":1,"fillGradient":0,"gridPos":{"h":8,"w":16,"x":0,"y":14},"hiddenSeries":false,"id":1857,"isNew":true,"legend":{"alignAsTable":true,"avg":false,"current":true,"max":true,"min":false,"show":true,"sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":1,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":5,"points":false,"renderer":"flot","seriesOverrides":[{"alias":"/load15$/","fill":0,"lines":true,"linewidth":6},{"alias":"/load5$/","fill":0,"lines":true,"linewidth":4}],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"unpoller_device_load_average_1{site_name=~\"$Site\",name=~\"$Switch\"}","interval":"$Smooth","legendFormat":"{{name}}
load1","refId":"A"},{"expr":"unpoller_device_load_average_5{site_name=~\"$Site\",name=~\"$Switch\"}","hide":true,"interval":"$Smooth","legendFormat":"{{name}}
load5","refId":"B"},{"expr":"unpoller_device_load_average_15{site_name=~\"$Site\",name=~\"$Switch\"}","hide":false,"interval":"$Smooth","legendFormat":"{{name}}
load15","refId":"C"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"Device
Load Average","tooltip":{"msResolution":false,"shared":true,"sort":2,"value_type":"cumulative"},"transparent":true,"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"$$hashKey":"object:13149","format":"none","label":null,"logBase":1,"max":null,"min":null,"show":true},{"$$hashKey":"object:13150","format":"short","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{"switch":"dark-purple"},"bars":false,"cacheTimeout":null,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","decimals":0,"description":"","fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":0,"fillGradient":0,"gridPos":{"h":8,"w":8,"x":16,"y":14},"hiddenSeries":false,"hideTimeOverride":true,"id":1861,"interval":"","legend":{"avg":false,"current":false,"hideEmpty":true,"max":true,"min":false,"show":true,"total":false,"values":true},"lines":true,"linewidth":2,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":2,"points":false,"renderer":"flot","seriesOverrides":[],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"unpoller_device_cpu_utilization_ratio{site_name=~\"$Site\",name=~\"$Switch\",type=~\"usw|udm|udmp\"}","interval":"$Smooth","legendFormat":"{{name}}","refId":"A"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"CPU","tooltip":{"shared":true,"sort":2,"value_type":"individual"},"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"decimals":1,"format":"percentunit","label":"CPU
Utilization","logBase":1,"max":"1","min":"0","show":true},{"format":"short","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","description":"Shows
data transferred for selected switch ports.","fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":1,"fillGradient":0,"gridPos":{"h":17,"w":24,"x":0,"y":22},"hiddenSeries":false,"id":135,"legend":{"alignAsTable":true,"avg":false,"current":true,"hideEmpty":true,"hideZero":false,"max":true,"min":false,"rightSide":true,"show":true,"sort":"current","sortDesc":true,"total":false,"values":true},"lines":true,"linewidth":1,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":2,"points":false,"renderer":"flot","seriesOverrides":[{"alias":"/Rx$/","transform":"negative-Y"}],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"rate(unpoller_device_port_transmit_bytes_total{site_name=~\"$Site\",
name=~\"$Switch\", port_id=~\"$Port\"}[$__interval])","interval":"$Smooth","legendFormat":"{{port_id}}
{{port_name}} Tx","refId":"A"},{"expr":"rate(unpoller_device_port_receive_bytes_total{site_name=~\"$Site\",
name=~\"$Switch\", port_id=~\"$Port\"}[$__interval])","interval":"$Smooth","legendFormat":"{{port_id}}
{{port_name}} Rx","refId":"B"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"Data
Transfer","tooltip":{"shared":true,"sort":0,"value_type":"individual"},"transparent":true,"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"format":"Bps","label":"Bytes
Per Second","logBase":1,"max":null,"min":null,"show":true},{"format":"short","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"columns":[],"datasource":"VictoriaMetrics","description":"This
panel displays lifetime totals and current data as of now.","fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fontSize":"90%","gridPos":{"h":21,"w":24,"x":0,"y":39},"id":214,"links":[],"pageSize":null,"scroll":true,"showHeader":true,"sort":{"col":2,"desc":true},"styles":[{"alias":"Port
Name","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":"Switch","thresholds":[],"type":"string","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":"Time","thresholds":[],"type":"hidden","unit":"short"},{"alias":"Switch","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":"name","thresholds":[],"type":"string","unit":"short"},{"alias":"Port","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":"port_num","thresholds":[],"type":"number","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":"__name__","thresholds":[],"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":"instance","thresholds":[],"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":"job","thresholds":[],"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":"port_id","thresholds":[],"type":"hidden","unit":"short"},{"alias":"Client","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":"port_name","thresholds":[],"type":"string","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
#A","thresholds":[],"type":"number","unit":"bytes"},{"alias":"Site","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":"site_name","thresholds":[],"type":"string","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":"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
#B","thresholds":[],"type":"number","unit":"decbytes"},{"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 #C","thresholds":[],"type":"number","unit":"short"},{"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
#D","thresholds":[],"type":"number","unit":"short"},{"alias":"Tx Broadcast","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":"Rx
Broadcast","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":"short"},{"alias":"Tx Errors","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":"short"},{"alias":"Rx
Errors","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
#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":null,"mappingType":1,"pattern":"Value #I","thresholds":[],"type":"number","unit":"short"},{"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":null,"mappingType":1,"pattern":"Value
#J","thresholds":[],"type":"number","unit":"short"},{"alias":"Amps","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 #K","thresholds":[],"type":"number","unit":"mamp"},{"alias":"Volts","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 #L","thresholds":[],"type":"number","unit":"volt"},{"alias":"Watts","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 #M","thresholds":[],"type":"number","unit":"watt"}],"targets":[{"expr":"sum
by (name,port_num,port_name,site_name,source) (unpoller_device_port_receive_bytes_total{site_name=~\"$Site\",name=~\"$Switch\"})","format":"table","instant":true,"refId":"A"},{"expr":"sum
by (name,port_num,port_name,site_name,source) (unpoller_device_port_transmit_bytes_total{site_name=~\"$Site\",name=~\"$Switch\"})","format":"table","hide":false,"instant":true,"refId":"B"},{"expr":"sum
by (name,port_num,port_name,site_name,source) (unpoller_device_port_receive_dropped_total{site_name=~\"$Site\",name=~\"$Switch\"})","format":"table","hide":false,"instant":true,"refId":"D"},{"expr":"sum
by (name,port_num,port_name,site_name,source) (unpoller_device_port_transmit_dropped_total{site_name=~\"$Site\",name=~\"$Switch\"})","format":"table","hide":false,"instant":true,"refId":"C"},{"expr":"sum
by (name,port_num,port_name,site_name,source) (unpoller_device_port_receive_broadcast_total{site_name=~\"$Site\",name=~\"$Switch\"})","format":"table","hide":false,"instant":true,"refId":"F"},{"expr":"sum
by (name,port_num,port_name,site_name,source) (unpoller_device_port_transmit_broadcast_total{site_name=~\"$Site\",name=~\"$Switch\"})","format":"table","hide":false,"instant":true,"refId":"E"},{"expr":"sum
by (name,port_num,port_name,site_name,source) (unpoller_device_port_receive_errors_total{site_name=~\"$Site\",name=~\"$Switch\"})","format":"table","hide":false,"instant":true,"refId":"H"},{"expr":"sum
by (name,port_num,port_name,site_name,source) (unpoller_device_port_transmit_errors_total{site_name=~\"$Site\",name=~\"$Switch\"})","format":"table","hide":false,"instant":true,"refId":"G"},{"expr":"sum
by (name,port_num,port_name,site_name,source) (unpoller_device_port_receive_packets_total{site_name=~\"$Site\",name=~\"$Switch\"})","format":"table","hide":false,"instant":true,"refId":"J"},{"expr":"sum
by (name,port_num,port_name,site_name,source) (unpoller_device_port_transmit_packets_total{site_name=~\"$Site\",name=~\"$Switch\"})","format":"table","hide":false,"instant":true,"refId":"I"},{"expr":"sum
by (name,port_num,port_name,site_name,source) (unpoller_device_port_poe_amperes{site_name=~\"$Site\",name=~\"$Switch\"})","format":"table","hide":false,"instant":true,"refId":"K"},{"expr":"sum
by (name,port_num,port_name,site_name,source) (unpoller_device_port_poe_volts{site_name=~\"$Site\",name=~\"$Switch\"})","format":"table","hide":false,"instant":true,"refId":"L"},{"expr":"sum
by (name,port_num,port_name,site_name,source) (unpoller_device_port_poe_watts{site_name=~\"$Site\",name=~\"$Switch\"})","format":"table","hide":false,"instant":true,"refId":"M"}],"title":"All
Port Information","transform":"table","transparent":true,"type":"table-old"},{"collapsed":true,"datasource":"${DS_UNIFI_POLLER}","gridPos":{"h":1,"w":24,"x":0,"y":60},"id":4,"panels":[{"columns":[],"datasource":"VictoriaMetrics","description":"These
are total \"lifetime\" counters.","fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fontSize":"90%","gridPos":{"h":3,"w":24,"x":0,"y":61},"id":291,"links":[],"pageSize":null,"scopedVars":{"Port":{"selected":false}},"scroll":true,"showHeader":true,"sort":{"col":13,"desc":true},"styles":[{"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":"Time","thresholds":[],"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":0,"mappingType":1,"pattern":"Speed","thresholds":[],"type":"number","unit":"decbytes"},{"alias":"","align":"auto","colorMode":"cell","colors":["rgba(50,
172, 45, 0)","rgba(237, 129, 40, 0.89)","rgba(245, 54, 54, 0.9)"],"dateFormat":"YYYY-MM-DD
HH:mm:ss","decimals":0,"mappingType":1,"pattern":"/Drops|Errors/","thresholds":["10","100"],"type":"number","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":1,"mappingType":1,"pattern":"/^Bytes/","thresholds":[],"type":"number","unit":"decbytes"},{"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":0,"mappingType":1,"pattern":"Satisfaction","thresholds":[],"type":"number","unit":"percent"},{"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":null,"mappingType":1,"pattern":"/^[TR]x /","thresholds":[],"type":"number","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":0,"mappingType":1,"pattern":"Volts","thresholds":[],"type":"number","unit":"volt"},{"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":1,"mappingType":1,"pattern":"Watts","thresholds":[],"type":"number","unit":"watt"},{"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":0,"mappingType":1,"pattern":"Amps","thresholds":[],"type":"number","unit":"mamp"}],"targets":[{"expr":"unpoller_device_port_port_speed_bps{port_id=\"$Port\",
site_name=~\"$Site\"}","format":"time_series","instant":true,"interval":"$Smooth","legendFormat":"Speed","refId":"A"},{"expr":"unpoller_device_port_poe_amperes{port_id=\"$Port\",
site_name=~\"$Site\"}","format":"time_series","hide":false,"instant":true,"interval":"$Smooth","legendFormat":"Amps","refId":"B"},{"expr":"unpoller_device_port_poe_volts{port_id=\"$Port\",
site_name=~\"$Site\"}","format":"time_series","hide":false,"instant":true,"interval":"$Smooth","legendFormat":"Volts","refId":"C"},{"expr":"unpoller_device_port_poe_watts{port_id=\"$Port\",
site_name=~\"$Site\"}","format":"time_series","hide":false,"instant":true,"interval":"$Smooth","legendFormat":"Watts","refId":"D"},{"expr":"unpoller_device_port_transmit_broadcast_total{port_id=\"$Port\",
site_name=~\"$Site\"}","format":"time_series","instant":true,"interval":"$Smooth","legendFormat":"Tx
Broadcast","refId":"E"},{"expr":"unpoller_device_port_transmit_multicast_total{port_id=\"$Port\",
site_name=~\"$Site\"}","format":"time_series","instant":true,"interval":"$Smooth","legendFormat":"Rx
Multicast","refId":"F"},{"expr":"unpoller_device_port_receive_dropped_total{port_id=\"$Port\",
site_name=~\"$Site\"}","format":"time_series","instant":true,"interval":"$Smooth","legendFormat":"Rx
Drops","refId":"G"},{"expr":"unpoller_device_port_transmit_dropped_total{port_id=\"$Port\",
site_name=~\"$Site\"}","format":"time_series","instant":true,"interval":"$Smooth","legendFormat":"Tx
Drops","refId":"N"},{"expr":"unpoller_device_port_transmit_errors_total+unpoller_device_port_receive_errors_total{port_id=\"$Port\",
site_name=~\"$Site\"}","format":"time_series","instant":true,"interval":"$Smooth","legendFormat":"Rx+Tx
Errors","refId":"H"},{"expr":"unpoller_device_port_receive_packets_total{port_id=\"$Port\",
site_name=~\"$Site\"}","format":"time_series","instant":true,"interval":"$Smooth","legendFormat":"Rx
Packets","refId":"I"},{"expr":"unpoller_device_port_transmit_packets_total{port_id=\"$Port\",
site_name=~\"$Site\"}","format":"time_series","hide":false,"instant":true,"interval":"$Smooth","legendFormat":"Tx
Packets","refId":"J"},{"expr":"unpoller_device_port_receive_bytes_total{port_id=\"$Port\",
site_name=~\"$Site\"}","format":"time_series","hide":false,"instant":true,"interval":"$Smooth","legendFormat":"Bytes
Rx","refId":"K"},{"expr":"unpoller_device_port_transmit_bytes_total{port_id=\"$Port\",
site_name=~\"$Site\"}","format":"time_series","hide":false,"instant":true,"interval":"$Smooth","legendFormat":"Bytes
Tx","refId":"L"},{"expr":"unpoller_device_port_satisfaction_percent{port_id=\"$Port\",
site_name=~\"$Site\"}","format":"time_series","hide":false,"instant":true,"interval":"$Smooth","legendFormat":"Satisfaction","refId":"M"}],"title":"Switch
$Port Information","transform":"timeseries_to_columns","type":"table-old"},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","description":"Shows
data transfer rate per second for Switch $Port. TX on positive axis and RX on
negative axis.","fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":1,"fillGradient":0,"gridPos":{"h":9,"w":24,"x":0,"y":64},"hiddenSeries":false,"id":1396,"legend":{"alignAsTable":true,"avg":true,"current":true,"max":true,"min":true,"rightSide":false,"show":true,"total":false,"values":true},"lines":true,"linewidth":1,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":2,"points":false,"renderer":"flot","scopedVars":{"Port":{"selected":false}},"seriesOverrides":[{"alias":"/Rx$/","transform":"negative-Y"}],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"rate(unpoller_device_port_receive_bytes_total{site_name=~\"$Site\",
port_id=~\"$Port\"}[$__interval])","interval":"$Smooth","legendFormat":" {{port_id}}
({{port_name}}) Rx","refId":"A"},{"expr":"rate(unpoller_device_port_transmit_bytes_total{site_name=~\"$Site\",
port_id=~\"$Port\"}[$__interval])","interval":"$Smooth","legendFormat":" {{port_id}}
({{port_name}}) Tx","refId":"B"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"Data
Transfer: Switch $Port","tooltip":{"shared":true,"sort":0,"value_type":"individual"},"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"format":"Bps","label":"Bytes
/ Second","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,"datasource":"VictoriaMetrics","description":"Shows
broadcast and multicast packets per second for Switch $Port. TX on positive axis
and RX on negative axis.","fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":1,"fillGradient":0,"gridPos":{"h":7,"w":12,"x":0,"y":73},"hiddenSeries":false,"id":594,"legend":{"alignAsTable":true,"avg":true,"current":true,"max":true,"min":true,"rightSide":false,"show":true,"total":false,"values":true},"lines":true,"linewidth":1,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":2,"points":false,"renderer":"flot","scopedVars":{"Port":{"selected":false}},"seriesOverrides":[{"alias":"/Rx$/","transform":"negative-Y"}],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"rate(unpoller_device_port_receive_broadcast_total{site_name=~\"$Site\",
port_id=~\"$Port\"}[$__interval])","interval":"$Smooth","legendFormat":"{{port_id}}
({{port_name}}) Broadcast Rx","refId":"A"},{"expr":"rate(unpoller_device_port_transmit_broadcast_total{site_name=~\"$Site\",
port_id=~\"$Port\"}[$__interval])","interval":"$Smooth","legendFormat":"{{port_id}}
({{port_name}}) Broadcast Tx","refId":"B"},{"expr":"rate(unpoller_device_port_receive_multicast_total{site_name=~\"$Site\",
port_id=~\"$Port\"}[$__interval])","interval":"$Smooth","legendFormat":"{{port_id}}
({{port_name}}) Multicast Rx","refId":"C"},{"expr":"rate(unpoller_device_port_transmit_multicast_total{site_name=~\"$Site\",
port_id=~\"$Port\"}[$__interval])","interval":"$Smooth","legendFormat":"{{port_id}}
({{port_name}}) Multicast Tx","refId":"D"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"Multicast
& Broadcast: Switch $Port","tooltip":{"shared":true,"sort":0,"value_type":"individual"},"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"format":"pps","label":"PPS","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,"datasource":"VictoriaMetrics","decimals":null,"description":"Shows
errors and dropped packets for Switch $Port. RX on negative axis.","fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":1,"fillGradient":0,"gridPos":{"h":7,"w":12,"x":12,"y":73},"hiddenSeries":false,"id":367,"legend":{"alignAsTable":false,"avg":false,"current":false,"hideEmpty":true,"max":true,"min":false,"rightSide":false,"show":true,"total":false,"values":true},"lines":true,"linewidth":1,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":2,"points":false,"renderer":"flot","scopedVars":{"Port":{"selected":false}},"seriesOverrides":[{"alias":"/Rx$/","transform":"negative-Y"}],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"rate(unpoller_device_port_receive_dropped_total{site_name=~\"$Site\",
port_id=~\"$Port\"}[$__interval])","interval":"$Smooth","legendFormat":"{{port_id}}
({{port_name}}) Drops Rx","refId":"A"},{"expr":"rate(unpoller_device_port_transmit_dropped_total{site_name=~\"$Site\",
port_id=~\"$Port\"}[$__interval])","interval":"$Smooth","legendFormat":"{{port_id}}
({{port_name}}) Drops Tx","refId":"B"},{"expr":"rate(unpoller_device_port_transmit_errors_total{site_name=~\"$Site\",
port_id=~\"$Port\"}[$__interval])","interval":"$Smooth","legendFormat":"{{port_id}}
({{port_name}}) Errors Tx","refId":"C"},{"expr":"rate(unpoller_device_port_receive_errors_total{site_name=~\"$Site\",
port_id=~\"$Port\"}[$__interval])","interval":"$Smooth","legendFormat":"{{port_id}}
({{port_name}}) Errors Rx","refId":"D"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"Errors
and Drops: Switch $Port","tooltip":{"shared":true,"sort":2,"value_type":"individual"},"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"$$hashKey":"object:4320","decimals":null,"format":"pps","label":"packets
per second","logBase":1,"max":null,"min":null,"show":true},{"$$hashKey":"object:4321","format":"short","label":null,"logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","description":"Shows
packet counters for Switch $Port. TX on positive axis and RX on negative axis.","fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":1,"fillGradient":0,"gridPos":{"h":7,"w":12,"x":0,"y":80},"hiddenSeries":false,"id":468,"legend":{"alignAsTable":true,"avg":true,"current":true,"max":true,"min":true,"rightSide":false,"show":true,"total":true,"values":true},"lines":true,"linewidth":1,"links":[],"nullPointMode":"null","options":{"dataLinks":[]},"percentage":false,"pointradius":2,"points":false,"renderer":"flot","scopedVars":{"Port":{"selected":false}},"seriesOverrides":[{"alias":"/Rx$/","transform":"negative-Y"}],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"rate(unpoller_device_port_receive_packets_total{site_name=~\"$Site\",
port_id=~\"$Port\"}[$__interval])","interval":"$Smooth","legendFormat":"{{port_id}}
({{port_name}}) Rx","refId":"A"},{"expr":"rate(unpoller_device_port_transmit_packets_total{site_name=~\"$Site\",
port_id=~\"$Port\"}[$__interval])","interval":"$Smooth","legendFormat":"{{port_id}}
({{port_name}}) Tx","refId":"B"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"Packets
Per Second: Switch $Port","tooltip":{"shared":true,"sort":0,"value_type":"individual"},"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"format":"pps","label":"PPS","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,"datasource":"VictoriaMetrics","description":"Display
POE Power for Switch $Port.","fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":1,"fillGradient":0,"gridPos":{"h":7,"w":4,"x":12,"y":80},"hiddenSeries":false,"id":745,"legend":{"alignAsTable":true,"avg":false,"current":true,"max":true,"min":false,"rightSide":false,"show":true,"total":false,"values":true},"lines":true,"linewidth":1,"links":[],"nullPointMode":"connected","options":{"dataLinks":[]},"percentage":false,"pointradius":2,"points":false,"renderer":"flot","scopedVars":{"Port":{"selected":false}},"seriesOverrides":[],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"unpoller_device_port_poe_watts{site_name=~\"$Site\",
port_id=~\"$Port\"}","interval":"$Smooth","legendFormat":"{{port_id}} Watts","refId":"A"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"POE
Power: Switch $Port","tooltip":{"shared":true,"sort":0,"value_type":"individual"},"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"format":"watt","label":"Watts","logBase":1,"max":null,"min":null,"show":true},{"format":"watt","label":"Watts","logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","description":"Display
POE Voltage for Switch $Port.","fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":1,"fillGradient":0,"gridPos":{"h":7,"w":4,"x":16,"y":80},"hiddenSeries":false,"id":921,"legend":{"alignAsTable":true,"avg":false,"current":true,"hideEmpty":true,"max":true,"min":false,"rightSide":false,"show":true,"total":false,"values":true},"lines":true,"linewidth":1,"links":[],"nullPointMode":"connected","options":{"dataLinks":[]},"percentage":false,"pointradius":2,"points":false,"renderer":"flot","scopedVars":{"Port":{"selected":false}},"seriesOverrides":[],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"unpoller_device_port_poe_volts{site_name=~\"$Site\",
port_id=~\"$Port\"}","interval":"$Smooth","legendFormat":"{{port_id}} Volts","refId":"A"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"POE
Voltage: Switch $Port","tooltip":{"shared":true,"sort":2,"value_type":"individual"},"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"format":"volt","label":"Volts","logBase":1,"max":null,"min":null,"show":true},{"format":"watt","label":"Watts","logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}},{"aliasColors":{},"bars":false,"dashLength":10,"dashes":false,"datasource":"VictoriaMetrics","description":"Display
POE Current for Switch $Port.","fieldConfig":{"defaults":{"custom":{}},"overrides":[]},"fill":1,"fillGradient":0,"gridPos":{"h":7,"w":4,"x":20,"y":80},"hiddenSeries":false,"id":922,"legend":{"alignAsTable":true,"avg":false,"current":true,"max":true,"min":false,"rightSide":false,"show":true,"total":false,"values":true},"lines":true,"linewidth":1,"links":[],"nullPointMode":"connected","options":{"dataLinks":[]},"percentage":false,"pointradius":2,"points":false,"renderer":"flot","scopedVars":{"Port":{"selected":false}},"seriesOverrides":[],"spaceLength":10,"stack":false,"steppedLine":false,"targets":[{"expr":"unpoller_device_port_poe_amperes{site_name=~\"$Site\",
port_id=~\"$Port\"}","interval":"$Smooth","legendFormat":"{{port_id}} Amps","refId":"A"}],"thresholds":[],"timeFrom":null,"timeRegions":[],"timeShift":null,"title":"POE
Current: Switch $Port","tooltip":{"shared":true,"sort":0,"value_type":"individual"},"type":"graph","xaxis":{"buckets":null,"mode":"time","name":null,"show":true,"values":[]},"yaxes":[{"format":"mamp","label":"Amps","logBase":1,"max":null,"min":null,"show":true},{"format":"watt","label":"Watts","logBase":1,"max":null,"min":null,"show":false}],"yaxis":{"align":false,"alignLevel":null}}],"repeat":"Port","title":"Switch
$Port","type":"row"},{"collapsed":true,"datasource":"${DS_UNIFI_POLLER}","gridPos":{"h":1,"w":24,"x":0,"y":85},"id":2299,"panels":[],"title":"Purposely
Empty Row","type":"row"}],"refresh":"1m","schemaVersion":25,"style":"dark","tags":["unifi","usw","unifi-poller"],"templating":{"list":[{"allValue":".*","current":{},"datasource":"VictoriaMetrics","definition":"label_values(unpoller_device_info,source)","hide":2,"includeAll":true,"label":null,"multi":true,"name":"Controller","options":[],"query":"label_values(unpoller_device_info,source)","refresh":1,"regex":"","skipUrlSync":false,"sort":1,"tagValuesQuery":"","tags":[],"tagsQuery":"","type":"query","useTags":false},{"allValue":"","current":{"selected":true,"tags":[],"text":"All","value":["$__all"]},"hide":0,"includeAll":true,"label":null,"multi":true,"name":"Devices","options":[{"selected":true,"text":"All","value":"$__all"},{"selected":false,"text":"udm","value":"udm"},{"selected":false,"text":"usw","value":"usw"},{"selected":false,"text":"uap","value":"uap"}],"query":"udm,usw,uap","queryValue":"","skipUrlSync":false,"type":"custom"},{"allValue":".*","current":{},"datasource":"VictoriaMetrics","definition":"label_values(unpoller_device_info{source=~\"$Controller\"},site_name)","hide":0,"includeAll":true,"label":null,"multi":true,"name":"Site","options":[],"query":"label_values(unpoller_device_info{source=~\"$Controller\"},site_name)","refresh":1,"regex":"","skipUrlSync":false,"sort":1,"tagValuesQuery":"","tags":[],"tagsQuery":"","type":"query","useTags":false},{"allValue":"","current":{},"datasource":"VictoriaMetrics","definition":"label_values(unpoller_device_info{site_name=~\"$Site\",
type=~\"$Devices\"},name)","hide":0,"includeAll":true,"label":null,"multi":true,"name":"Switch","options":[],"query":"label_values(unpoller_device_info{site_name=~\"$Site\",
type=~\"$Devices\"},name)","refresh":1,"regex":"","skipUrlSync":false,"sort":1,"tagValuesQuery":"","tags":[],"tagsQuery":"","type":"query","useTags":false},{"allValue":".*","current":{},"datasource":"VictoriaMetrics","definition":"label_values(unpoller_device_port_port_speed_bps{site_name=~\"$Site\",
name=~\"$Switch\"},port_id)","hide":0,"includeAll":true,"label":null,"multi":true,"name":"Port","options":[],"query":"label_values(unpoller_device_port_port_speed_bps{site_name=~\"$Site\",
name=~\"$Switch\"},port_id)","refresh":1,"regex":"","skipUrlSync":false,"sort":3,"tagValuesQuery":"","tags":[],"tagsQuery":"","type":"query","useTags":false},{"allValue":null,"current":{"tags":[],"text":"2m","value":"2m"},"hide":0,"includeAll":false,"label":null,"multi":false,"name":"Smooth","options":[{"selected":false,"text":"30s","value":"30s"},{"selected":false,"text":"1m","value":"1m"},{"selected":true,"text":"2m","value":"2m"},{"selected":false,"text":"5m","value":"5m"},{"selected":false,"text":"10m","value":"10m"},{"selected":false,"text":"15m","value":"15m"},{"selected":false,"text":"30m","value":"30m"}],"query":"30s,1m,2m,5m,10m,15m,30m","skipUrlSync":false,"type":"custom"}]},"time":{"from":"now-3h","to":"now"},"timepicker":{"nowDelay":"","refresh_intervals":["30s","1m","5m","15m","30m","1h","2h"],"time_options":["5m","15m","1h","6h","12h","24h","2d","7d","30d"]},"timezone":"browser","title":"UniFi-Poller:
USW Insights - Prometheus","uid":"FsfxpWaZz","version":35}'
kind: ConfigMap
metadata:
labels:
app.kubernetes.io/part-of: unpoller
grafana_dashboard: "1"
name: unpoller-dashboard-usw-insights
namespace: monitoring
@@ -0,0 +1,77 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: unpoller
namespace: monitoring
labels:
app.kubernetes.io/name: unpoller
app.kubernetes.io/instance: unpoller
spec:
replicas: 1
selector:
matchLabels:
app.kubernetes.io/name: unpoller
template:
metadata:
labels:
app.kubernetes.io/name: unpoller
app.kubernetes.io/instance: unpoller
spec:
securityContext:
runAsNonRoot: true
runAsUser: 65534
runAsGroup: 65534
seccompProfile:
type: RuntimeDefault
containers:
- name: unpoller
image: ghcr.io/unpoller/unpoller:v3.3.1
ports:
- name: metrics
containerPort: 9130
protocol: TCP
env:
# Outputs: Prometheus exporter on, InfluxDB off.
- name: UP_INFLUXDB_DISABLE
value: "true"
- name: UP_PROMETHEUS_DISABLE
value: "false"
- name: UP_PROMETHEUS_HTTP_LISTEN
value: "0.0.0.0:9130"
# UniFi OS controller: self-signed cert, poll all sites.
- name: UP_UNIFI_DEFAULT_VERIFY_SSL
value: "false"
- name: UP_UNIFI_DEFAULT_SITE_0
value: "all"
- name: UP_UNIFI_DEFAULT_SAVE_SITES
value: "true"
- name: UP_POLLER_DEBUG
value: "false"
# UP_UNIFI_DEFAULT_URL / _USER / _PASS come from the secret.
envFrom:
- secretRef:
name: unpoller-unifi
readinessProbe:
httpGet:
path: /
port: metrics
initialDelaySeconds: 5
periodSeconds: 15
livenessProbe:
httpGet:
path: /
port: metrics
initialDelaySeconds: 15
periodSeconds: 30
securityContext:
allowPrivilegeEscalation: false
readOnlyRootFilesystem: true
capabilities:
drop:
- ALL
resources:
requests:
cpu: 50m
memory: 64Mi
limits:
memory: 256Mi
@@ -0,0 +1,27 @@
apiVersion: v1
kind: Secret
metadata:
name: unpoller-unifi
namespace: monitoring
type: Opaque
stringData:
#ENC[AES256_GCM,data:ii9nZ95ZfxWrmxlxsrI3/GMqAhMZWe7NJVxZoHaY9WLhGgndKJ0wVnJc7FDkTiSENVsmyvOR9Un8nquxtOpnWuJkiK4UVMgt,iv:vq8/8M9wZTYBjSC28n11z1dwYg9QpPeJkbChSrXwR9g=,tag:d3gsygZLzAZvKSbPGVkfWw==,type:comment]
UP_UNIFI_DEFAULT_URL: ENC[AES256_GCM,data:6Ng+S4pJtZ1RrCZzYsaBcsij,iv:XVEJhGuzul53wA2jDcTRSTQ+Zg5LfrjYIsfnIwKJrjI=,tag:p5cuB+TucDJ0nS6qZwrU5w==,type:str]
#ENC[AES256_GCM,data:bPOMGlTiBcBaxZooysr8eGiYEPpiiWw7qj24YbZfs/+gUqvQICFoZFUuvtQHUr7d1AvXMmD08C7oxo2Wi3CQO49zaBMprC2Pp1afIQBYGEdAzTw=,iv:ZMgm/r6n/q7SHiQcXuv9jNH17FYO9m53YtstrWMIsHQ=,tag:JigMJbOWMai+95UX+Hq1DQ==,type:comment]
UP_UNIFI_DEFAULT_USER: ENC[AES256_GCM,data:tcGXHfzSeX4=,iv:VdqazUQzNZu4wrNtU/ZBM+Z/qgKFJcn5vUGPQk8XnY4=,tag:gimPFlc9r+wHINhkxgie4w==,type:str]
UP_UNIFI_DEFAULT_PASS: ENC[AES256_GCM,data:zNgR/FH3H53dlH+FBcaRHcE6eAORkBKg5X1cM35dAQs=,iv:cgvYU4RlAST5+2qchDa7qJhxpmqXWKmaGy5aEptum4E=,tag:0Iv6jVbq3p+462FmNUEDAA==,type:str]
sops:
age:
- enc: |
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBpekpqdDJqeGZBbmNPVVlW
MDN6WnI4Ynd1dGhQTlkwYzY4STREMnFuQkFNCjVWWGFjMW5rOUVESVQ5RVhZZ2FT
cmtnejhHMzBpNlV5bmpsMWdwcW5ZNFEKLS0tIHdLQ0lRdXZuTE1DWUJ6L1hCUFhK
ajhCRUh2dVQrUkJJamFCTDU0eS9lajAKq/7OhPmhVUTVFos0IdBozgFXAcv5HutH
yudHIJNuecjCFsTpM7gr6d6dBfr2xBKk8HsTkjfuwwI+/Bd3+VObvw==
-----END AGE ENCRYPTED FILE-----
recipient: age1jetw4h63gq4uzyk08znynw4h852nexdmtkdz4kwxj5ew5st32vnspmtag2
encrypted_regex: ^(data|stringData|email)$
lastmodified: "2026-06-19T18:29:59Z"
mac: ENC[AES256_GCM,data:MSKLVzChp1ylSbtQU1eaxf1egktK6B75PLQTgoMkVXZZ5GJJzXEsWuiIdnud9vcMet8uBVVLUzqfsCEEwkobJXf7yi8jloKboIYqkKb38PlSb6SVyj3QB59a7LMISUZspBFiiVozrRD7q5jzZKlK86v0RJ21KvxOVdv7pbTfzUY=,iv:rkoR814sUKLMkPHG8zZQk7sGF59w+gc1qbDO65TvOd0=,tag:zcjGwcFZ5tzjApN472bpTA==,type:str]
version: 3.13.1
@@ -0,0 +1,17 @@
apiVersion: v1
kind: Service
metadata:
name: unpoller
namespace: monitoring
labels:
app.kubernetes.io/name: unpoller
app.kubernetes.io/instance: unpoller
spec:
type: ClusterIP
selector:
app.kubernetes.io/name: unpoller
ports:
- name: metrics
port: 9130
targetPort: metrics
protocol: TCP
@@ -0,0 +1,18 @@
apiVersion: operator.victoriametrics.com/v1beta1
kind: VMServiceScrape
metadata:
name: unpoller
namespace: monitoring
labels:
app.kubernetes.io/name: unpoller
spec:
selector:
matchLabels:
app.kubernetes.io/name: unpoller
endpoints:
# unpoller caches controller data and refreshes it every 60s, so a tighter
# scrape interval just re-serves the same cache.
- port: metrics
path: /metrics
interval: 60s
scrapeTimeout: 30s
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,27 @@
# This manifest was generated by flux. DO NOT EDIT.
---
apiVersion: source.toolkit.fluxcd.io/v1
kind: GitRepository
metadata:
name: flux-system
namespace: flux-system
spec:
interval: 1m0s
ref:
branch: master
secretRef:
name: flux-system
url: https://github.com/berezovskyi-oleksandr/homelab.git
---
apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: flux-system
namespace: flux-system
spec:
interval: 10m0s
path: ./kubernetes-monitoring
prune: true
sourceRef:
kind: GitRepository
name: flux-system
@@ -0,0 +1,5 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- gotk-components.yaml
- gotk-sync.yaml
+5
View File
@@ -0,0 +1,5 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- flux-system
- apps/ks.yaml
+1
View File
@@ -10,6 +10,7 @@ data:
server_name _;
root /git/current;
index index.html;
absolute_redirect off;
location /health {
access_log off;
+4
View File
@@ -24,6 +24,10 @@ spec:
values:
deploymentStrategyType: Recreate
image:
# renovate: datasource=docker depName=fireflyiii/core
tag: version-6.5.9
podSecurityContext:
seccompProfile:
type: RuntimeDefault
+44
View File
@@ -0,0 +1,44 @@
{
"kubernetes": {
"fileMatch": ["kubernetes/app/firefly/.+\\.yaml$"]
},
"customManagers": [
{
"customType": "regex",
"fileMatch": ["kubernetes/app/firefly/release\\.yaml$"],
"matchStrings": [
"#\\s*renovate:\\s*datasource=(?<datasource>\\S+)\\s+depName=(?<depName>\\S+)\\s*\\n\\s*tag:\\s*[\"']?(?<currentValue>[^\\s\"']+)"
]
}
],
"packageRules": [
{
"matchFileNames": ["kubernetes/app/firefly/**"],
"semanticCommitScope": "k8s/firefly"
},
{
"description": "Tags are version-X.Y.Z; skip floating version-X.Y, version-X, latest, develop",
"matchFileNames": ["kubernetes/app/firefly/**"],
"matchPackageNames": ["fireflyiii/core"],
"versioning": "regex:^version-(?<major>\\d+)\\.(?<minor>\\d+)\\.(?<patch>\\d+)$"
},
{
"matchFileNames": ["kubernetes/app/firefly/**"],
"matchPackageNames": ["fireflyiii/core"],
"matchUpdateTypes": ["patch", "minor"],
"automerge": true
},
{
"matchFileNames": ["kubernetes/app/firefly/**"],
"matchPackageNames": ["fireflyiii/core"],
"matchUpdateTypes": ["major"],
"automerge": false
},
{
"description": "Ignore infrastructure images",
"matchFileNames": ["kubernetes/app/firefly/**"],
"matchPackageNames": ["postgres", "creativeprojects/resticprofile"],
"enabled": false
}
]
}
File diff suppressed because one or more lines are too long
+4
View File
@@ -90,6 +90,10 @@ data:
icon: grocy.png
href: https://${GROCY_HOST}/
description: Chores and inventory tracker
- Vikunja:
icon: vikunja.png
href: https://${VIKUNJA_HOST}/
description: Task management
widgets.yaml: |
---
+23
View File
@@ -0,0 +1,23 @@
{
"kubernetes": {
"fileMatch": ["kubernetes/app/homepage/.+\\.yaml$"]
},
"packageRules": [
{
"matchFileNames": ["kubernetes/app/homepage/**"],
"semanticCommitScope": "k8s/homepage"
},
{
"matchFileNames": ["kubernetes/app/homepage/**"],
"matchPackageNames": ["ghcr.io/gethomepage/homepage"],
"matchUpdateTypes": ["patch", "minor"],
"automerge": true
},
{
"matchFileNames": ["kubernetes/app/homepage/**"],
"matchPackageNames": ["ghcr.io/gethomepage/homepage"],
"matchUpdateTypes": ["major"],
"automerge": false
}
]
}
+1 -1
View File
@@ -28,7 +28,7 @@ spec:
main:
image:
repository: ghcr.io/immich-app/immich-server
tag: v2.7.5
tag: v3.2.0
resources:
requests:
cpu: 100m
+1 -1
View File
@@ -43,7 +43,7 @@ spec:
mountPath: /db-local
containers:
- name: jellyfin
image: jellyfin/jellyfin:10.11.8
image: jellyfin/jellyfin:10.11.11
env:
- name: JELLYFIN_PublishedServerUrl
value: https://${JELLYFIN_HOST}
+1
View File
@@ -17,6 +17,7 @@ spec:
interval: 1m0s
values:
image:
# renovate: datasource=docker depName=ghcr.io/hargata/lubelogger
tag: "v1.6.1"
updateStrategy:
+38
View File
@@ -0,0 +1,38 @@
{
"kubernetes": {
"fileMatch": ["kubernetes/app/lubelogger/.+\\.yaml$"]
},
"customManagers": [
{
"customType": "regex",
"fileMatch": ["kubernetes/app/lubelogger/release\\.yaml$"],
"matchStrings": [
"#\\s*renovate:\\s*datasource=(?<datasource>\\S+)\\s+depName=(?<depName>\\S+)\\s*\\n\\s*tag:\\s*[\"']?(?<currentValue>[^\\s\"']+)"
]
}
],
"packageRules": [
{
"matchFileNames": ["kubernetes/app/lubelogger/**"],
"semanticCommitScope": "k8s/lubelogger"
},
{
"matchFileNames": ["kubernetes/app/lubelogger/**"],
"matchPackageNames": ["ghcr.io/hargata/lubelogger"],
"matchUpdateTypes": ["patch", "minor"],
"automerge": true
},
{
"matchFileNames": ["kubernetes/app/lubelogger/**"],
"matchPackageNames": ["ghcr.io/hargata/lubelogger"],
"matchUpdateTypes": ["major"],
"automerge": false
},
{
"description": "Ignore infrastructure images",
"matchFileNames": ["kubernetes/app/lubelogger/**"],
"matchPackageNames": ["postgres", "creativeprojects/resticprofile"],
"enabled": false
}
]
}
@@ -45,7 +45,7 @@ spec:
- psql -d postgres -c 'CREATE DATABASE "prowlarr-log"' || true
containers:
- name: prowlarr
image: lscr.io/linuxserver/prowlarr:2.3.5
image: lscr.io/linuxserver/prowlarr:2.5.2
envFrom:
- configMapRef:
name: media-common-env
@@ -29,7 +29,7 @@ spec:
mountPath: /media
containers:
- name: qbittorrent
image: lscr.io/linuxserver/qbittorrent:5.2.0
image: lscr.io/linuxserver/qbittorrent:5.2.3
envFrom:
- configMapRef:
name: media-common-env
+1 -1
View File
@@ -54,7 +54,7 @@ spec:
- psql -d postgres -c 'CREATE DATABASE "radarr-log"' || true
containers:
- name: radarr
image: lscr.io/linuxserver/radarr:6.1.1
image: lscr.io/linuxserver/radarr:6.3.0
envFrom:
- configMapRef:
name: media-common-env
+1 -1
View File
@@ -54,7 +54,7 @@ spec:
- psql -d postgres -c 'CREATE DATABASE "sonarr-log"' || true
containers:
- name: sonarr
image: lscr.io/linuxserver/sonarr:4.0.17
image: lscr.io/linuxserver/sonarr:4.0.19
envFrom:
- configMapRef:
name: media-common-env
+1 -1
View File
@@ -18,7 +18,7 @@ spec:
targetNamespace: media
values:
image:
tag: v3.2.0
tag: v3.4.1
podLabels:
app: seerr
extraEnv:
+37
View File
@@ -0,0 +1,37 @@
{
"kubernetes": {
"fileMatch": ["kubernetes/app/paperless/.+\\.yaml$"]
},
"packageRules": [
{
"matchFileNames": ["kubernetes/app/paperless/**"],
"semanticCommitScope": "k8s/paperless"
},
{
"matchFileNames": ["kubernetes/app/paperless/**"],
"matchPackageNames": [
"ghcr.io/paperless-ngx/paperless-ngx",
"apache/tika",
"gotenberg/gotenberg"
],
"matchUpdateTypes": ["patch", "minor"],
"automerge": true
},
{
"matchFileNames": ["kubernetes/app/paperless/**"],
"matchPackageNames": [
"ghcr.io/paperless-ngx/paperless-ngx",
"apache/tika",
"gotenberg/gotenberg"
],
"matchUpdateTypes": ["major"],
"automerge": false
},
{
"description": "Ignore infrastructure images",
"matchFileNames": ["kubernetes/app/paperless/**"],
"matchPackageNames": ["postgres", "redis", "creativeprojects/resticprofile"],
"enabled": false
}
]
}
+6 -6
View File
@@ -4,11 +4,10 @@ metadata:
name: podsync-config
namespace: podsync
data:
config.toml: ENC[AES256_GCM,data:Rq80V/j8GZdpvxKrnVG+wc6EXbVDeD0y73yKLKMcBvPPGWlOM8XFEJXn2ObEzGj0k3NzFaimyfpM9nf3wigPZWIstyNoy/cvBiIPdojjfcB1cjsEKTR8opPfOu7G0gLyFNc8FST3Odug1Ja66BeDFAIEa2L7m+H0HMT0SxGYJ5avK0T12N8mQjeBd7C7WDqI4azKcTS49whfCJ4/GgGtKReb0X8dkCa3gxcmzx/EoD8aGlPvpcUvjVEu8NFWWEKDltI+vrC5qw6V1ICYFvhH8HmAu+FMWfE7jXi5RhYvq4j6VnT0n5ypdCDzIT2xrQv+HYdJ6fCI/HvI7kVnQRdEj+8Blu0A82HheoDhRlzY3AQofU2FYudNuRW4SV+al0/Iw8Hb+uyevg4qTQLnJ8m8paLnzkH7ajo/IPAw+o1Ag2yjcnEJLHFFMhPGQNuA8/OFQt5R0avmPsjPoLqVWIWe4XDscWhvd05UvTRDLeFvmnHtq+dvBbam2kPBPTr2TaSC0SAxfx2W+fpk7nXi77zMVyHQLkNsTCXR+OxdaQvrd+1/X9eYDI+PwFJL77QLfKYI4z2RCx580T33CHoxq799R6g8Pir9dBi/lx/Y/VmNuR8UoJbyhfr5QidlyDOai1c6slna3tg1MgSjplxl3nPCjaaae5TcM53J3FR4TUJ1qi/rdE2OvMEaY1yctix50Z7Bqzi1H7oH2BDgakOkE3oN6Zh6lNHuDEeF5cYxAf8WxgdypYe/4uoiSdkZ8UHTB7Rr6uQsqJLkc6P0EmOh/52/+eKtp+0Us3pxsbGkLdVZhuj5GahQZsdoiverU9eRJFhY7LTBDOVx3xYFKRWV8DmcmG5bWPuW48YTklrq61eVgnLfX964dyvTNNskLMCX7qMzs/FLfD+TsLiyAPnsxaypQAIkb3U1Ubr87QuQa1x5at0/m2HFC7Hw13b6lvzU2PbXTQjbLgjBBvGi82XpFx4LgO/+v+T5ICBqoH4whAn3FedfBZsShyThBkT+jg29EfrNyYdFbjYD0m3ga0nWHrILikjtMk2Fp423pejXcAuOiwVIOHJil3ODSTo+9iswKmiShxHPzCQNTJmfkH9nbFOD1HHA6qaEu3O32UjB7JoWxYWpKvnn/xXj2AUMS0ngvGeklKcREOIA5ubJoU89wBDBEh9NoTp2sPQ8REoFufR8SSSVh1cBPiUowT/dXGiUvufhtzuqGxvfE/KwAQLHys4xHhhKT9ulAd3nhCD49gojL515VlzQ15491HVk4vISm2YbDfdwnRxRfXsypKzghTZh1KcEbbYfowKobCC61V95YioGEF5jEiQH3Y+92iqTALayTWUjktqMbyNI6UKhQNEjsQTeRRNCcoTPQdB2nV44MFVF+AiWnhU+vpoteLqO84ccrvwHUneHIjVx3zw6GBpDU19CSsHAM1SPIzPVcgNn6hlqs+MSy+Teu3i3t/ByV3MQQJEkCANKsLoItthXzEaXy+52D85gxhpcOkyj97NFH9PiY9XVG3bXQpJlJTJOdnjG7ori3w7Rfedi1d0rzNGHCnmFJ2fjomb2zmwfDvIR+el6WBg0a8dAkPwkq4Myiu1TsQ==,iv:IBKFowkljRfrknG9K6Spq5clPqn/M3+W94h2vu7Er2o=,tag:9MO97fAJDDvYZmsIkIyj5Q==,type:str]
config.toml: ENC[AES256_GCM,data:4C8zSvWM9kMxII0RU9EhfUvQGgZMJTtMUOVM9LGunfpkmZQjH3IrbsytgzZBbw7ha7IHjhLxvdXleHNXbc2ZCbphp/lhIrqOLsa2f8J/P/ppyJVLafEt+bQB4lVXVauhy72bV/9RZYIgCatDYMR7+sJVWGyl1f6ZnJ3S+nVXROXPmlxlDhJnCwPUVj+OVq7OKnDjspZpnlZizr5tRzMMJPVuVTDi9cKDFHnoL2x7iINyzvJk8Wb4N+k481sY7isJ5BJyTno3RNKhcykL8cfZQunQ1mlBodvZiSph1gAxY3H3oljb2uB0Zf4J3FkpSCPkIQBpGec+NiQAjPRk5zot0VCZVvtAEL1UfctvhcnhbMwNQbEfdvewFXbIF6lwuatI/gd2+ICuas19n6luzwAfw+WGOHtEDbsIccl6l9lfphid7TotKs992LqBVL3BuCoGM4kqe/8QZc+iaw2VbjGxJhim9T0NnvvPlj8WJ/hnOy+e4wLmzKZcryUNjqQdpzlPr/CFwlnKgU26zjyb6438vf0mC06Mp1AHCoqznZkLPOeJC7YeEybf0T2Dm1/7e0iBFVFVSX3zCUQ0fS1vCyulszUUNsJtAsgg/KkqDSiqT6YWWsUaDZ5qbkcIsQNBFcQVX3Owm7x2tcppi9xYOCFfIDxAx0ugx6kKTf/4XfZ4yIRyUhIETny3P/4WoHCzIz6Hd65RaxbIwbyRz8U8mFbsDtk3o+7c/6UsX1uEFJjoFFlrOcy9ID1um8LXGxicB6VdrtNfwWiFq9Vwf+eHdKFMC5fSqtuSu/yDHKC8w2eb98IG9k0rf+4NHzRlxYPhCUs8YJsWJYpXC4tK8fPWLg7zuByf8nnUQ405Ga8ZvcuDQ9xDWFtMg8JJoZ1wODHIJiovIxNlZQmuxGrrpI5+S4CZKVjEVgD7GRXn3ewDVMk8Tdaf1iq0x09cxj52rgf3VxeOiVolrNJgzygePvYSxb30nsMpQSmmLCGCp5viJ0FhH6MuccJK9wmzJiEYuC5OkhGHaQLkAUDdroZTBDek/AQGzdu8J+NL+Qk3KuJ1ZQs1xgzpB74vqAdjAUUNzZlDw5hejv7enjstTjU1usy88Y8Lf1AORHiGcLzxpwjdeQQFsTuBqPVCHs7Nt9xYYk5nbv8wXM8Z7gk/+SMJayTOq5PDfLZNd530M1rMBIZ1HSBvYsAQvGVd91xjoMvMs04VCoGZcFZuurukx9Rh6U/5pm5roIXkmWHFp/2S3HfnBqEbQYbqrV5jXGQs6yIEQcRT91UY7csdnDL9fzlR37T21cOXfo2CrCzZyaTfGh+y6GusC9xg9qaBihno+PxOV++h80Nd5MsYSXIjaXTX8CioKaCMCToEXHzWUUsr+tHopMR0fG+QJAiZ2Fa7c5dYAU2EKkyfziuhGPSxHBxrc9W/0VjfB10Vf+iFVGCP2JEm99G7esQNh9kszSkyY2wOycUllqQO3eT9dHsSFdswq/bvKgkvQz0oOmJcubE1jvUn7YW8CF6KABlM5L/hi+ntcNc2YWLWqaNghOQsjCbpiqjdp6pejiM9g+3NbC7O2Z8Nf0zwgka7FRQXaJfl+FHFb3X2Qk4VGiinoK+EVCQX4CCD9EYK065jkdTpqDDESy1n4SUMIkE2iA==,iv:cpa826ZkBPSc/ZX4P6sJ5kgDXMfryd+d3UAsbfb7764=,tag:V3FERsM9ZfNO8TbHEsf86w==,type:str]
sops:
age:
- recipient: age1zffnskvuezntkk703a0pyxsd5m8vx2hm33dr47wdfy8mn4fdw4sqgw0jgc
enc: |
- enc: |
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB2QTBUbnNBcGFhYjNiNGRG
T3JqdFY0dTIzWDA3OGNVUkoreVhONXVDeFVVCkR0amlYMThyejlPaWlPSkdGL0xy
@@ -16,7 +15,8 @@ sops:
bkg3K01kWFl4ZWZuK21KRTIxUEhDUEEKPGWzrJlyZGNOsvrVhWKw56y8iAwrqDQK
OWJYIq0gt9NWfNBao8UpiuKJXU4SX01hW4fa1OEfGSDJAjNNxGpFVA==
-----END AGE ENCRYPTED FILE-----
lastmodified: "2026-04-05T14:05:23Z"
mac: ENC[AES256_GCM,data:JRyHvPgWIoGQHtVu6EbN1QKr+Cg9nCwQl4i88g75Pc85cyrjB7qCb4L7J7Oq34WfAMnXMEP/PP6RIK/i9s9tiJ4YH9ZO/K8HhIoLjCl5uMjFzjybTUwLmBL0RdSAkf6wfX/G4LNRpD39cb2eLz0lvQm9RzdICvM1MNuPEeohlUk=,iv:NVlJzKoKDIySCP3W0PJqheplPN3FdUEN07E03sbk1fE=,tag:nOZyzssD9jqT8oEhf6K+qQ==,type:str]
recipient: age1zffnskvuezntkk703a0pyxsd5m8vx2hm33dr47wdfy8mn4fdw4sqgw0jgc
encrypted_regex: ^(data|stringData|email)$
version: 3.12.2
lastmodified: "2026-06-22T19:19:33Z"
mac: ENC[AES256_GCM,data:Rd0q5r8DA3I7rNNbv9t/5c1LD0Dm1897rGvqhi4l91g9KpSCxQFu0+z6cUH7yhLCopFSWCezQHnBYEGFEkESl04DYkAAj/+ntLSnAhfHijbZshCdHhzr+bxMInajVbDMJTs0DXm2moFMUpcpVn3EHC3UTr/kj/PDfsK9oXugIW0=,iv:ZmlXvPONTD2w+Agh5QqYr8DMMbAeM/QQuWRsFcrw728=,tag:IRoRIxkcQQQuLbG+ccTxuA==,type:str]
version: 3.13.1
+1 -1
View File
@@ -15,7 +15,7 @@ spec:
spec:
containers:
- name: podsync
image: ghcr.io/mxpv/podsync
image: ghcr.io/mxpv/podsync:v2.8.0
ports:
- containerPort: 8080
volumeMounts:
+23
View File
@@ -0,0 +1,23 @@
{
"kubernetes": {
"fileMatch": ["kubernetes/app/podsync/.+\\.yaml$"]
},
"packageRules": [
{
"matchFileNames": ["kubernetes/app/podsync/**"],
"semanticCommitScope": "k8s/podsync"
},
{
"matchFileNames": ["kubernetes/app/podsync/**"],
"matchPackageNames": ["ghcr.io/mxpv/podsync"],
"matchUpdateTypes": ["patch", "minor"],
"automerge": true
},
{
"matchFileNames": ["kubernetes/app/podsync/**"],
"matchPackageNames": ["ghcr.io/mxpv/podsync"],
"matchUpdateTypes": ["major"],
"automerge": false
}
]
}
+144
View File
@@ -0,0 +1,144 @@
apiVersion: batch/v1
kind: CronJob
metadata:
name: vikunja-db-backup
namespace: vikunja
labels:
app: vikunja-backup
spec:
schedule: "0 2 * * *"
concurrencyPolicy: Forbid
successfulJobsHistoryLimit: 3
failedJobsHistoryLimit: 3
jobTemplate:
spec:
template:
metadata:
labels:
app: vikunja-backup
spec:
restartPolicy: OnFailure
initContainers:
- name: pg-dump
image: postgres:18
imagePullPolicy: IfNotPresent
env:
- name: PGHOST
value: vikunja-db
- name: PGUSER
valueFrom:
secretKeyRef:
name: vikunja-credentials
key: DB_USERNAME
- name: PGPASSWORD
valueFrom:
secretKeyRef:
name: vikunja-credentials
key: DB_PASSWORD
- name: PGDATABASE
valueFrom:
secretKeyRef:
name: vikunja-credentials
key: DB_DATABASE_NAME
command:
- sh
- -c
- pg_dump --clean --if-exists > /backup/dump.sql
volumeMounts:
- name: backup-tmp
mountPath: /backup
containers:
- name: resticprofile
image: creativeprojects/resticprofile:0.32.0
imagePullPolicy: IfNotPresent
command:
- sh
- -c
- |
resticprofile -c /secrets/profiles.yaml -n vikunja-db backup
resticprofile -c /secrets/profiles.yaml -n vikunja-db copy
env:
- name: B2_ACCOUNT_ID
valueFrom:
secretKeyRef:
name: vikunja-backup-config
key: B2_ACCOUNT_ID
- name: B2_ACCOUNT_KEY
valueFrom:
secretKeyRef:
name: vikunja-backup-config
key: B2_ACCOUNT_KEY
volumeMounts:
- name: secrets
mountPath: /secrets
readOnly: true
- name: backup-tmp
mountPath: /backup
volumes:
- name: secrets
secret:
secretName: vikunja-backup-config
- name: backup-tmp
emptyDir: {}
---
apiVersion: batch/v1
kind: CronJob
metadata:
name: vikunja-files-backup
namespace: vikunja
labels:
app: vikunja-backup
spec:
schedule: "0 3 * * *"
concurrencyPolicy: Forbid
successfulJobsHistoryLimit: 3
failedJobsHistoryLimit: 3
jobTemplate:
spec:
template:
metadata:
labels:
app: vikunja-backup
spec:
restartPolicy: OnFailure
containers:
- name: resticprofile
image: creativeprojects/resticprofile:0.32.0
imagePullPolicy: IfNotPresent
command:
- sh
- -c
- |
resticprofile -c /secrets/profiles.yaml -n vikunja-files backup
resticprofile -c /secrets/profiles.yaml -n vikunja-files copy
env:
- name: B2_ACCOUNT_ID
valueFrom:
secretKeyRef:
name: vikunja-backup-config
key: B2_ACCOUNT_ID
- name: B2_ACCOUNT_KEY
valueFrom:
secretKeyRef:
name: vikunja-backup-config
key: B2_ACCOUNT_KEY
volumeMounts:
- name: secrets
mountPath: /secrets
readOnly: true
- name: files
mountPath: /files
readOnly: true
resources:
requests:
cpu: 100m
memory: 256Mi
limits:
memory: 1Gi
volumes:
- name: secrets
secret:
secretName: vikunja-backup-config
- name: files
persistentVolumeClaim:
claimName: vikunja-files
+114
View File
@@ -0,0 +1,114 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: vikunja
namespace: vikunja
labels:
app: vikunja
spec:
replicas: 1
strategy:
type: Recreate
selector:
matchLabels:
app: vikunja
template:
metadata:
labels:
app: vikunja
spec:
securityContext:
runAsNonRoot: true
runAsUser: 1000
runAsGroup: 1000
# No fsGroup — the NFS subdir provisioner creates directories 0777, and an
# fsGroup chown over NFS is slow and can fail against Synology's root squash.
seccompProfile:
type: RuntimeDefault
containers:
- name: vikunja
image: vikunja/vikunja:2.6.0
imagePullPolicy: IfNotPresent
ports:
- containerPort: 3456
name: http
protocol: TCP
env:
- name: VIKUNJA_SERVICE_PUBLICURL
value: https://${VIKUNJA_HOST}/
- name: VIKUNJA_SERVICE_TIMEZONE
value: Europe/Kyiv
- name: VIKUNJA_SERVICE_ENABLEREGISTRATION
value: "false"
- name: VIKUNJA_SERVICE_SECRET
valueFrom:
secretKeyRef:
name: vikunja-credentials
key: SERVICE_SECRET
- name: VIKUNJA_DATABASE_TYPE
value: postgres
- name: VIKUNJA_DATABASE_HOST
value: vikunja-db
- name: VIKUNJA_DATABASE_SSLMODE
value: disable
- name: VIKUNJA_DATABASE_USER
valueFrom:
secretKeyRef:
name: vikunja-credentials
key: DB_USERNAME
- name: VIKUNJA_DATABASE_PASSWORD
valueFrom:
secretKeyRef:
name: vikunja-credentials
key: DB_PASSWORD
- name: VIKUNJA_DATABASE_DATABASE
valueFrom:
secretKeyRef:
name: vikunja-credentials
key: DB_DATABASE_NAME
- name: VIKUNJA_FILES_BASEPATH
value: /app/vikunja/files
# Authentication is delegated to Authelia over OIDC — local accounts are off,
# so the login page redirects straight to Authelia (single provider).
- name: VIKUNJA_AUTH_LOCAL_ENABLED
value: "false"
- name: VIKUNJA_AUTH_OPENID_ENABLED
value: "true"
- name: VIKUNJA_AUTH_OPENID_PROVIDERS_AUTHELIA_NAME
value: Authelia
- name: VIKUNJA_AUTH_OPENID_PROVIDERS_AUTHELIA_AUTHURL
value: https://auth.${AUTHELIA_DOMAIN}
- name: VIKUNJA_AUTH_OPENID_PROVIDERS_AUTHELIA_CLIENTID
value: vikunja
- name: VIKUNJA_AUTH_OPENID_PROVIDERS_AUTHELIA_SCOPE
value: openid profile email
- name: VIKUNJA_AUTH_OPENID_PROVIDERS_AUTHELIA_CLIENTSECRET
valueFrom:
secretKeyRef:
name: vikunja-credentials
key: OIDC_CLIENT_SECRET
volumeMounts:
- name: files
mountPath: /app/vikunja/files
livenessProbe:
httpGet:
port: 3456
path: /health
initialDelaySeconds: 30
periodSeconds: 30
readinessProbe:
httpGet:
port: 3456
path: /health
initialDelaySeconds: 10
periodSeconds: 10
resources:
requests:
cpu: 50m
memory: 128Mi
limits:
memory: 512Mi
volumes:
- name: files
persistentVolumeClaim:
claimName: vikunja-files
+25
View File
@@ -0,0 +1,25 @@
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: vikunja
namespace: vikunja
annotations:
cert-manager.io/cluster-issuer: letsencrypt
# No Authelia forward-auth middleware — Vikunja authenticates against Authelia
# natively over OIDC. A middleware here would break the OIDC callback and the API.
spec:
tls:
- hosts:
- ${VIKUNJA_HOST}
secretName: vikunja-tls
rules:
- host: ${VIKUNJA_HOST}
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: vikunja
port:
number: 3456
+4
View File
@@ -0,0 +1,4 @@
apiVersion: v1
kind: Namespace
metadata:
name: vikunja
+95
View File
@@ -0,0 +1,95 @@
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: default-deny-ingress
namespace: vikunja
spec:
podSelector: {}
policyTypes:
- Ingress
---
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: allow-ingress-controller
namespace: vikunja
spec:
podSelector:
matchLabels:
app: vikunja
policyTypes:
- Ingress
ingress:
- from:
- namespaceSelector:
matchLabels:
kubernetes.io/metadata.name: traefik
---
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: allow-app-to-db
namespace: vikunja
spec:
podSelector:
matchLabels:
app: vikunja-db
policyTypes:
- Ingress
ingress:
- from:
- podSelector:
matchLabels:
app: vikunja
ports:
- port: 5432
---
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: allow-backup-to-db
namespace: vikunja
spec:
podSelector:
matchLabels:
app: vikunja-db
policyTypes:
- Ingress
ingress:
- from:
- podSelector:
matchLabels:
app: vikunja-backup
ports:
- port: 5432
---
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: allow-backup-egress
namespace: vikunja
spec:
podSelector:
matchLabels:
app: vikunja-backup
policyTypes:
- Egress
egress:
- ports:
- port: 53
protocol: UDP
- port: 53
protocol: TCP
- ports:
- port: 8888
protocol: TCP
- ports:
- port: 443
protocol: TCP
- ports:
- port: 5432
protocol: TCP
to:
- podSelector:
matchLabels:
app: vikunja-db
+12
View File
@@ -0,0 +1,12 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: vikunja-files
namespace: vikunja
spec:
accessModes:
- ReadWriteOnce
storageClassName: nfs-synology-ssd
resources:
requests:
storage: 10Gi
+29
View File
@@ -0,0 +1,29 @@
{
"kubernetes": {
"fileMatch": ["kubernetes/app/vikunja/.+\\.yaml$"]
},
"packageRules": [
{
"matchFileNames": ["kubernetes/app/vikunja/**"],
"semanticCommitScope": "k8s/vikunja"
},
{
"matchFileNames": ["kubernetes/app/vikunja/**"],
"matchPackageNames": ["vikunja/vikunja"],
"matchUpdateTypes": ["patch", "minor"],
"automerge": true
},
{
"matchFileNames": ["kubernetes/app/vikunja/**"],
"matchPackageNames": ["vikunja/vikunja"],
"matchUpdateTypes": ["major"],
"automerge": false
},
{
"description": "Ignore infrastructure images",
"matchFileNames": ["kubernetes/app/vikunja/**"],
"matchPackageNames": ["postgres", "creativeprojects/resticprofile"],
"enabled": false
}
]
}
@@ -0,0 +1,26 @@
apiVersion: v1
kind: Secret
metadata:
name: vikunja-backup-config
namespace: vikunja
stringData:
profiles.yaml: ENC[AES256_GCM,data:F1LINzN/Mg4Qk5J1nHRNSeOptMDMNrlFmJ1hLqYuuUpwfC8wDjMcz6ckpAkBFwqmN9i6Yl+w8q/rmFl1/hOU6cE1j5naFd3ElAoxYoftxho3bj41qBs74OwgrisPFKkB1/uUzzl6GTh4fg0jWpDoZSNDWgRzpb/g+mw9Duo+EePP396sF7t1g282NPd3LHqBNF4esE18xjtfLvyR/m7qHJGEjLd1+UyNECcofcoUoEx2Pf7BIGyTdHBoJjqou5djp/z8n9MKjNrw/9vGbr/jew398xqfDuJw+Xa8M5iudbFddnYfDoBv5HdRCRwDpUmNJuLEYFBp3TO72vaTGLG0j7TWxx4OjtxLx7arekk4s8NIybe92mRsXvEJuEfbyShJ5gDrvJZnwItQRTi/uI4Gncp6DHVU9YF7KN8qjUmMFh7YwutuakqLNg/hb5zk+KgDcvSyms9dBr1b7DPhZNjxLMTdila+s8tcA4l3VScEu/NAE4oMmAIbZU28S4Y2Y/IF0XbPZxU9KIVRRux0bysaeOPHlGYEJyx0008bKaTFWOzRHMgEyLZIqMmDr9h8avzciuuUr5aV3IrImwVHs2YJi/L0SESyuNutFwqalPCX3EUg/GYMdHFLgUuUmCeoFKgpmYHheQEofPt8X/uTXjsys3CrJpqvNUHnAFhoxl2cuI3MULP7bFOSbRenJ/0neftm/M2vfGSSOt9yVMOPlpK277yxg2OUZdHX9z0AyBsDZ4HVJRDXa6/n9N4sls18TUTo0Vj29SrOBRYHpYQ1Cw3V32N3krKjdqxjqeScOx4yJcyG6yu6UTJ3Q6UXnNpoZdCUj7qsqf72y8SIA7QhuJtSyXdw/aUHg4L5Aovi15e277WRm8UFz8dVYj0P9NIU6yp3+yCvEyIgnsyk8IIfIL0LLJIG8dnpJ+w/WdYNiggOfmCbszEkywmYrbuxt/KfavmWsWjYOI+s8pFjgOag8AxCHG/HNQun7qxMQMSwToye7IIjlsna8Wd1H1YbVH2EtnsoVxBU07DVCeyIS5n1qVv7D8DN91escW5aMCFMXkMkEM+CPjBwFZTpMeCggxRW3NHu3vi7pN7MwAGSKNnf6nkNZxYB1r6YUx67GAkkwcjPoMdZ5EW6CIYHSKcc8xJ2/yLR0Yffjjf0S/veIaj5RZW79qIE77WCgizjfA0qw0XlQjBpBkLd88rXe6O5lkfHlUxNcXOwh+GYDud2Hl4i5Lq3pmgWlC8+yGow/5SxRx3XEw==,iv:fnSZAS8b6UaHxfrXDK5U+DB2aeVP6bay8uMeAQcz0q8=,tag:XfJpr5JlwEV5vJsUBFBM1w==,type:str]
restic-password-nas: ENC[AES256_GCM,data:QBpRS2bHav6zYn509C5T0T3mlHPYW0H7KkxubzbPwDJcOE3spZYCzW0qbSOSc4yh1aeTcd71VyuUQfG3UjRAHw==,iv:tveOXU2g04wGLtxBuBzmYFywXmG3dUE+6jlrIFox62w=,tag:2ldefgyqtDV/8KR3ebzRHQ==,type:str]
restic-password-b2: ENC[AES256_GCM,data:MdaPu+NM/Xn9KK6gd3P7gc/vDi9cOwh4aJ24M5TZU/DAoUGeGkB1ztUzcpBd/rLJgATBSDkGQHjpMHvnwtThOO4=,iv:OgzNbdsjQoniBWa5+0bC3NoxyX8sCK/KuhIDqaPuhhw=,tag:GZYjJCpwIHIRBVlhxvpH0Q==,type:str]
B2_ACCOUNT_ID: ENC[AES256_GCM,data:It7pzn642LA3YlaUCsimXJQSEt76JhDNaA==,iv:ESTTD9OeE3KBcqz5N4M1dxGPKk/8RDu4EdQfjAbOWys=,tag:fml43DJboUNVvsE9t+af4A==,type:str]
B2_ACCOUNT_KEY: ENC[AES256_GCM,data:3avk03/e6oX6SakG0f2DNEjUC5qU5axOHjGLuxa/cg==,iv:+uTPW3qFocGtUvkf7V3/gaI0dif6AxuUfyGWlN+1zII=,tag:QtlBxGquvZnV6zejdiPDmA==,type:str]
sops:
age:
- enc: |
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBrdG84VTMyZUhaVkpEQnJS
anU0VEs0U0l2WFF6K2hQKzVWQy91dkdOMTFNClI0VjQ3WkhjN2FsTUxwbEVYRjUr
QkxIT0JOWWZaUTl5eWM1TFpBM2NRODQKLS0tIGZRNXVlcU1pU0h0N1p6UWdMRDhV
NHFaS3pkTzlQQllzR0ZzMFU0N2hQV28KvFlkIKTi6p2EnGtq3NDYr2OKiSuLV8pM
FpQ54FBj7Qe6AEn6vWAQegRyMWAnOBFLR3q4mf+I4N7uaNh7FyZwQw==
-----END AGE ENCRYPTED FILE-----
recipient: age1zffnskvuezntkk703a0pyxsd5m8vx2hm33dr47wdfy8mn4fdw4sqgw0jgc
encrypted_regex: ^(data|stringData|email)$
lastmodified: "2026-09-07T12:01:37Z"
mac: ENC[AES256_GCM,data:G57xdrKJAFULcdRxXYuDdlztZRRLJfByYsEn9QZ/QEklFu3HcqoR8jgBcDF4d33LuyUFjayAg9w/vheTHK5TChaUMMsDj9AVDt1cIK4ZAnuLgWhF2kloxQqGY2F0xSJvIXoDyC+lwV+m+fGyeLDdGbboeheKEZJdCkHU/Pu/bLo=,iv:MPCYY2lUIZqjhFYfcHHau7mMWvYh1d1CLyBkha96oyM=,tag:xoqE5txjs5aoWtqJKcFNWw==,type:str]
version: 3.13.3
+26
View File
@@ -0,0 +1,26 @@
apiVersion: v1
kind: Secret
metadata:
name: vikunja-credentials
namespace: vikunja
stringData:
DB_USERNAME: ENC[AES256_GCM,data:v5ZLlBBCYw==,iv:FEAQixJxjQESAm44z9AubpzSv6VPKSQxpGkoYIxfKbk=,tag:e97BlPYRhZg8UweFyeaf3w==,type:str]
DB_PASSWORD: ENC[AES256_GCM,data:J90Xco62vI8a1KFPBjJNJV1ybisNX+D4LfPebTiXO6c=,iv:j/XY/1K87lfKRCNUSBF0wUH8jx1qlYIHuVjDjh6ia00=,tag:g7yoGK6W3ACbMo/VqYWSuQ==,type:str]
DB_DATABASE_NAME: ENC[AES256_GCM,data:ySn5r6E0Lw==,iv:lkZUN87lavIFzn/4VMpxzQY813gEmqp5zppoiHWQIE0=,tag:roKDQsDlt8qdQ6LUcNH6oQ==,type:str]
SERVICE_SECRET: ENC[AES256_GCM,data:NMliN4ctgGzSUQZ1lxdlis+7oEuI9Wo7AgR/Arad+Rwo3IYnz1dHcfxfozwz4nwO/8NMxfx91KHHKgpKL732Rg==,iv:8RRsKOjWJBDPIbMaiqjSDt78z4uY7RmDW9M9s7vEGzk=,tag:8gEbiZI1SxSpliNf5IYnKg==,type:str]
OIDC_CLIENT_SECRET: ENC[AES256_GCM,data:qg950MtKcwfCbVBGimxgQBSv11jK0SwFsTQAJEbmeINsIDUGGaaSdNNAcB//ccSBSw5SVgJQ/JTq67ZVz/6KjQ==,iv:HriNEfVMiGTA/y6ItBORtQ1hs/G7bYteqtqtx3HWYR8=,tag:kOoLNgD+ZC+nlbOhIqvzsg==,type:str]
sops:
age:
- enc: |
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBWTGtJSmo4eVBOU3pvdGZT
U1JwYjhaUm41NzBERzF6ek1TWStGSEZHK2pnCjU1RkdWVEVaeXhXc2tKVDlrRmgv
Kzd1N2dXTHRwdTlBNmdpMjdiTFRLSGsKLS0tIGp3cFh4a1YrRVBYamRNbGZxdXNP
c1ZMclQvcHpJR2N0MHNyVDc5VU13NjAKHLYo/UVPtAUydGDjk0cVyrN+m2rMg8AR
alZw1JdIch/Fgb9MPHmDDJwRU1aX8FEedz+pWE9p/UJjh0xIpgy2HQ==
-----END AGE ENCRYPTED FILE-----
recipient: age1zffnskvuezntkk703a0pyxsd5m8vx2hm33dr47wdfy8mn4fdw4sqgw0jgc
encrypted_regex: ^(data|stringData|email)$
lastmodified: "2026-09-07T11:46:05Z"
mac: ENC[AES256_GCM,data:VSSzkGzEAfo3G6GcG28aQaxG/ZFB0SYILd9JRh8MRCGShWxFaQK/6lSV341xhFFQpOHr87lGC4pIFUVMBZ81Iu2C+QAVSQN9HFEN7R6o2cizNrIycaGaoHB7YenNpJ63EBeCd4E32hXXEXOs6nvRwVlAkaNitMhDXp+myjHU/Tc=,iv:cG2JXmcHsY7HA56FTHzrJj+5XpZW75ynSlNXtV4zHjg=,tag:XYqsGpBBFiInSk5CXEubuQ==,type:str]
version: 3.13.3
+12
View File
@@ -0,0 +1,12 @@
apiVersion: v1
kind: Service
metadata:
name: vikunja-db
namespace: vikunja
spec:
clusterIP: None
selector:
app: vikunja-db
ports:
- port: 5432
targetPort: 5432
+12
View File
@@ -0,0 +1,12 @@
apiVersion: v1
kind: Service
metadata:
name: vikunja
namespace: vikunja
spec:
selector:
app: vikunja
ports:
- port: 3456
targetPort: 3456
name: http
@@ -0,0 +1,80 @@
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: vikunja-db
namespace: vikunja
labels:
app: vikunja-db
spec:
serviceName: vikunja-db
replicas: 1
selector:
matchLabels:
app: vikunja-db
template:
metadata:
labels:
app: vikunja-db
spec:
securityContext:
runAsUser: 999
runAsGroup: 999
fsGroup: 999
containers:
- name: postgres
image: postgres:18
imagePullPolicy: IfNotPresent
env:
- name: POSTGRES_USER
valueFrom:
secretKeyRef:
name: vikunja-credentials
key: DB_USERNAME
- name: POSTGRES_PASSWORD
valueFrom:
secretKeyRef:
name: vikunja-credentials
key: DB_PASSWORD
- name: POSTGRES_DB
valueFrom:
secretKeyRef:
name: vikunja-credentials
key: DB_DATABASE_NAME
- name: PGDATA
value: /var/lib/postgresql/data/pgdata
ports:
- containerPort: 5432
startupProbe:
tcpSocket:
port: 5432
initialDelaySeconds: 10
periodSeconds: 10
failureThreshold: 30
livenessProbe:
tcpSocket:
port: 5432
periodSeconds: 30
failureThreshold: 5
readinessProbe:
tcpSocket:
port: 5432
periodSeconds: 10
failureThreshold: 3
resources:
requests:
cpu: 50m
memory: 256Mi
limits:
memory: 1Gi
volumeMounts:
- name: data
mountPath: /var/lib/postgresql/data
volumeClaimTemplates:
- metadata:
name: data
spec:
accessModes: ["ReadWriteOnce"]
storageClassName: nfs-synology-ssd
resources:
requests:
storage: 5Gi
+4 -3
View File
@@ -36,6 +36,7 @@ stringData:
FIREFLY_HOST: ENC[AES256_GCM,data:EQdrW33PVlD/brZCqh/sTkqLdPWW/bo=,iv:zbNnjsT1J6lpCEWtvNyL4A3bjWsusCjI5goWcZ8hajk=,tag:VwA6YA056bsyYIKB+X59bw==,type:str]
GITEA_HOST: ENC[AES256_GCM,data:Ky3tXS9E9iadabpVzoK5zEbigmtn,iv:t6OdQeQ7Kxzb7qbi+KeoOkJd0XE2Dse5P1fFyiHM6tg=,tag:GpmHtVDr0IQVbpbALVx40g==,type:str]
BLOG_HOST: ENC[AES256_GCM,data:eADRFTla/PPFLVCoP9uKvPZ1YhY=,iv://xbCGLkZ6guGMDU0MnVtGR0adgMqNbe0zrCerj7w8k=,tag:HHXvN6y3YvJ4U4TkENkYVA==,type:str]
VIKUNJA_HOST: ENC[AES256_GCM,data:1VVkvVrdx02jPxHsQoQI9zJKN9v/9mE=,iv:ZagDcljNclEGvmMzS6pJWTv+FMa/a/X6POaWb+kHJuo=,tag:RuaUoX8O4LrEs491Sp4UyQ==,type:str]
BACKUP_LOCAL_HOST: ENC[AES256_GCM,data:ABaTI3NKkhF7K2FpPwvvrHA0l/tCxAi4Qek=,iv:34ixxSpKU1c12uoMdk4nz2Vo/+5A/npB7NWMsWFytIM=,tag:qjw2fQBebCKnqCnAPiBHaw==,type:str]
sops:
age:
@@ -49,6 +50,6 @@ sops:
-----END AGE ENCRYPTED FILE-----
recipient: age1zffnskvuezntkk703a0pyxsd5m8vx2hm33dr47wdfy8mn4fdw4sqgw0jgc
encrypted_regex: ^(data|stringData|email)$
lastmodified: "2026-05-11T19:20:10Z"
mac: ENC[AES256_GCM,data:eA4MCmIA7iuC6gelQqWfIWPBb5w+93BLfU2ZhqLMbIna+OIk0tOjogcVz89H+x72ryMB+39a1vD+cYzLcF16Zl0uVHB5UiK9UDssJ26nbt8SK18F9Ew0a0WLp+gCj2qNAB2Od8+rLOKccfmHm1x+C5RuvYnRE4A1U1VNu6sPx3Q=,iv:epN8ZWNF0taoWm94eR+Unx9TUvjSIlKMgacLfbyj94w=,tag:a9f+8K7SOQmFJaZZ2PjnMQ==,type:str]
version: 3.13.0
lastmodified: "2026-09-07T11:47:37Z"
mac: ENC[AES256_GCM,data:4ocnThiPrXCqKTKKgwaincewzI99O7cl9CGnJHrwLRFm8vA2G6MA8yGvywoKjmln8mEfPTTcMMZY8Nd7wFKHz9i4m+CHvzC7kPhTVIDW2HrkFoN7RgywPcgnP+mrco4wOd/huBLdv9+v/j4Iz5lXBMZgbVVkNdWV4xZ4Zx3gtyM=,iv:bfK9KN4E5nZYm6CwaFm3sxG62nDnNiuP5xsIreRHkAc=,tag:wi9r3EcJOHX0azzNVpGw0Q==,type:str]
version: 3.13.3
File diff suppressed because one or more lines are too long
@@ -8,7 +8,7 @@ spec:
chart:
spec:
chart: redis
version: 25.x
version: 25.5.3
reconcileStrategy: ChartVersion
sourceRef:
kind: HelmRepository
+7 -1
View File
@@ -6,7 +6,13 @@
"local>oleksandr/homelab//kubernetes/app/jellyfin/renovate.json",
"local>oleksandr/homelab//kubernetes/app/media/renovate.json",
"local>oleksandr/homelab//kubernetes/app/immich/renovate.json",
"local>oleksandr/homelab//kubernetes/app/gitea/renovate.json"
"local>oleksandr/homelab//kubernetes/app/gitea/renovate.json",
"local>oleksandr/homelab//kubernetes/app/homepage/renovate.json",
"local>oleksandr/homelab//kubernetes/app/vikunja/renovate.json",
"local>oleksandr/homelab//kubernetes/app/paperless/renovate.json",
"local>oleksandr/homelab//kubernetes/app/lubelogger/renovate.json",
"local>oleksandr/homelab//kubernetes/app/firefly/renovate.json",
"local>oleksandr/homelab//kubernetes/app/podsync/renovate.json"
],
"enabledManagers": ["kubernetes", "custom.regex"],
"automergeType": "branch",