diff --git a/dashboard/example_panels/ombi_requests_pending.json b/dashboard/example_panels/ombi_requests_pending.json new file mode 100644 index 0000000..0b09acf --- /dev/null +++ b/dashboard/example_panels/ombi_requests_pending.json @@ -0,0 +1,107 @@ +{ + "cacheTimeout": null, + "colorBackground": true, + "colorValue": false, + "colors": [ + "#299c46", + "rgba(237, 129, 40, 0.89)", + "rgba(212, 74, 58, 0.58)" + ], + "datasource": "influxdb", + "format": "none", + "gauge": { + "maxValue": 40, + "minValue": 0, + "show": false, + "thresholdLabels": false, + "thresholdMarkers": true + }, + "gridPos": { + "h": 3, + "w": 2, + "x": 20, + "y": 0 + }, + "id": 8, + "interval": null, + "links": [ + { + "targetBlank": true, + "title": "Ombi", + "type": "absolute", + "url": "https://request.server.com/requests" + } + ], + "mappingType": 1, + "mappingTypes": [ + { + "name": "value to text", + "value": 1 + }, + { + "name": "range to text", + "value": 2 + } + ], + "maxDataPoints": 100, + "nullPointMode": "connected", + "nullText": null, + "postfix": "", + "postfixFontSize": "50%", + "prefix": "", + "prefixFontSize": "50%", + "rangeMaps": [ + { + "from": "null", + "text": "N/A", + "to": "null" + } + ], + "sparkline": { + "fillColor": "rgba(31, 118, 189, 0.18)", + "full": false, + "lineColor": "rgb(31, 120, 193)", + "show": false + }, + "tableColumn": "", + "targets": [ + { + "dsType": "influxdb", + "groupBy": [], + "measurement": "Ombi", + "orderByTime": "ASC", + "policy": "default", + "refId": "A", + "resultFormat": "time_series", + "select": [ + [ + { + "params": [ + "pending" + ], + "type": "field" + } + ] + ], + "tags": [ + { + "key": "type", + "operator": "=", + "value": "Request_Counts" + } + ] + } + ], + "thresholds": ".5,5", + "title": "Req. Pending", + "type": "singlestat", + "valueFontSize": "80%", + "valueMaps": [ + { + "op": "=", + "text": "N/A", + "value": "null" + } + ], + "valueName": "current" +} diff --git a/dashboard/example_panels/ombi_requests_pending.png b/dashboard/example_panels/ombi_requests_pending.png new file mode 100644 index 0000000..e89bc70 Binary files /dev/null and b/dashboard/example_panels/ombi_requests_pending.png differ diff --git a/dashboard/example_panels/piechart_tautulli_device_types.json b/dashboard/example_panels/piechart_tautulli_device_types.json new file mode 100644 index 0000000..a4ec83b --- /dev/null +++ b/dashboard/example_panels/piechart_tautulli_device_types.json @@ -0,0 +1,122 @@ +{ + "aliasColors": { + "Android": "#a4ca39", + "Chrome": "#db3236", + "Chromecast": "#039BE5", + "NetCast": "#c8135c", + "Playstation 4": "#003791", + "Plex Media Player": "#e67817", + "Roku": "#6d3c97", + "Samsung": "#034ea2", + "Tizen": "#034ea2", + "Xbox One": "#107c10", + "iOS": "#858487", + "tvOS": "#858487" + }, + "breakPoint": "50%", + "cacheTimeout": null, + "combine": { + "label": "Others", + "threshold": ".04" + }, + "datasource": "influxdb", + "decimals": 0, + "fontSize": "110%", + "format": "none", + "gridPos": { + "h": 10, + "w": 5, + "x": 0, + "y": 6 + }, + "id": 24, + "interval": null, + "legend": { + "percentage": true, + "percentageDecimals": 0, + "show": true, + "sort": "total", + "sortDesc": true, + "values": true + }, + "legendType": "On graph", + "links": [], + "maxDataPoints": 3, + "nullPointMode": "connected", + "pieType": "donut", + "strokeWidth": "7", + "targets": [ + { + "alias": "$tag_device_type", + "application": { + "filter": "" + }, + "functions": [], + "group": { + "filter": "" + }, + "groupBy": [ + { + "params": [ + "device_type" + ], + "type": "tag" + } + ], + "host": { + "filter": "" + }, + "item": { + "filter": "" + }, + "measurement": "Tautulli", + "mode": 0, + "options": { + "showDisabledItems": false, + "skipEmptyValues": false + }, + "orderByTime": "ASC", + "policy": "default", + "refId": "A", + "resultFormat": "time_series", + "select": [ + [ + { + "params": [ + "session_key" + ], + "type": "field" + }, + { + "params": [], + "type": "distinct" + }, + { + "params": [], + "type": "count" + } + ] + ], + "table": { + "skipEmptyValues": false + }, + "tags": [ + { + "key": "type", + "operator": "=", + "value": "Session" + } + ], + "triggers": { + "acknowledged": 2, + "count": true, + "minSeverity": 3 + } + } + ], + "timeFrom": "1w", + "title": "Device Types", + "transparent": false, + "type": "grafana-piechart-panel", + "valueName": "total" +} diff --git a/dashboard/example_panels/piechart_tautulli_device_types.png b/dashboard/example_panels/piechart_tautulli_device_types.png new file mode 100644 index 0000000..1f08275 Binary files /dev/null and b/dashboard/example_panels/piechart_tautulli_device_types.png differ diff --git a/dashboard/example_panels/piechart_tautulli_stream_types.json b/dashboard/example_panels/piechart_tautulli_stream_types.json new file mode 100644 index 0000000..100281d --- /dev/null +++ b/dashboard/example_panels/piechart_tautulli_stream_types.json @@ -0,0 +1,109 @@ +{ + "aliasColors": {}, + "breakPoint": "50%", + "cacheTimeout": null, + "combine": { + "label": "Others", + "threshold": "0" + }, + "datasource": "influxdb", + "decimals": 0, + "fontSize": "110%", + "format": "none", + "gridPos": { + "h": 10, + "w": 5, + "x": 5, + "y": 6 + }, + "id": 25, + "interval": null, + "legend": { + "percentage": true, + "percentageDecimals": 0, + "show": true, + "sort": "total", + "sortDesc": true, + "values": true + }, + "legendType": "On graph", + "links": [], + "maxDataPoints": 3, + "nullPointMode": "connected", + "pieType": "donut", + "strokeWidth": "7", + "targets": [ + { + "alias": "$tag_video_decision", + "application": { + "filter": "" + }, + "functions": [], + "group": { + "filter": "" + }, + "groupBy": [ + { + "params": [ + "video_decision" + ], + "type": "tag" + } + ], + "host": { + "filter": "" + }, + "item": { + "filter": "" + }, + "measurement": "Tautulli", + "mode": 0, + "options": { + "showDisabledItems": false, + "skipEmptyValues": false + }, + "orderByTime": "ASC", + "policy": "default", + "refId": "A", + "resultFormat": "time_series", + "select": [ + [ + { + "params": [ + "session_key" + ], + "type": "field" + }, + { + "params": [], + "type": "distinct" + }, + { + "params": [], + "type": "count" + } + ] + ], + "table": { + "skipEmptyValues": false + }, + "tags": [ + { + "key": "type", + "operator": "=", + "value": "Session" + } + ], + "triggers": { + "acknowledged": 2, + "count": true, + "minSeverity": 3 + } + } + ], + "timeFrom": "1w", + "title": "Stream Types", + "transparent": false, + "type": "grafana-piechart-panel", + "valueName": "total" +} diff --git a/dashboard/example_panels/piechart_tautulli_stream_types.png b/dashboard/example_panels/piechart_tautulli_stream_types.png new file mode 100644 index 0000000..75c088a Binary files /dev/null and b/dashboard/example_panels/piechart_tautulli_stream_types.png differ diff --git a/dashboard/example_panels/table_radarr_missing_avail_movies.json b/dashboard/example_panels/table_radarr_missing_avail_movies.json new file mode 100644 index 0000000..0ddeb4d --- /dev/null +++ b/dashboard/example_panels/table_radarr_missing_avail_movies.json @@ -0,0 +1,109 @@ +{ + "columns": [], + "datasource": "influxdb", + "fontSize": "100%", + "gridPos": { + "h": 6, + "w": 4, + "x": 20, + "y": 3 + }, + "hideTimeOverride": true, + "id": 11, + "links": [ + { + "targetBlank": true, + "title": "Radarr", + "type": "absolute", + "url": "https://movies.server.com/wanted/missing" + } + ], + "minSpan": 6, + "pageSize": 4, + "scroll": true, + "showHeader": true, + "sort": { + "col": null, + "desc": false + }, + "styles": [ + { + "alias": "", + "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": "Name", + "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": "name", + "thresholds": [], + "type": "string", + "unit": "short" + } + ], + "targets": [ + { + "dsType": "influxdb", + "groupBy": [], + "measurement": "Radarr", + "orderByTime": "ASC", + "policy": "default", + "refId": "A", + "resultFormat": "table", + "select": [ + [ + { + "params": [ + "name" + ], + "type": "field" + }, + { + "params": [], + "type": "distinct" + }, + { + "params": [ + "Movie" + ], + "type": "alias" + } + ] + ], + "tags": [ + { + "key": "type", + "operator": "=", + "value": "Missing_Available" + }, + { + "condition": "AND", + "key": "server", + "operator": "=", + "value": "1" + } + ] + } + ], + "timeFrom": "1m", + "title": "Missing Available Movies", + "transform": "table", + "type": "table" +} diff --git a/dashboard/example_panels/table_radarr_missing_avail_movies.png b/dashboard/example_panels/table_radarr_missing_avail_movies.png new file mode 100644 index 0000000..932a66d Binary files /dev/null and b/dashboard/example_panels/table_radarr_missing_avail_movies.png differ diff --git a/dashboard/example_panels/table_radarr_queue.json b/dashboard/example_panels/table_radarr_queue.json new file mode 100644 index 0000000..427b00e --- /dev/null +++ b/dashboard/example_panels/table_radarr_queue.json @@ -0,0 +1,161 @@ +{ + "columns": [], + "datasource": "influxdb", + "fontSize": "90%", + "gridPos": { + "h": 5, + "w": 4, + "x": 20, + "y": 9 + }, + "hideTimeOverride": true, + "id": 20, + "interval": "32s", + "links": [ + { + "targetBlank": true, + "title": "Radarr", + "type": "absolute", + "url": "https://movies.server.com/wanted/missing" + } + ], + "minSpan": 6, + "pageSize": 3, + "scroll": true, + "showHeader": true, + "sort": { + "col": null, + "desc": false + }, + "styles": [ + { + "alias": "", + "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": "Name", + "colorMode": "row", + "colors": [ + "#0a437c", + "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", + "preserveFormat": true, + "thresholds": [ + "20" + ], + "type": "string", + "unit": "short" + }, + { + "alias": "", + "colorMode": "row", + "colors": [ + "#0a437c", + "rgb(168, 147, 4)", + "#629e51" + ], + "dateFormat": "YYYY-MM-DD HH:mm:ss", + "decimals": 0, + "mappingType": 1, + "pattern": "T", + "thresholds": [ + "-1", + "1" + ], + "type": "string", + "unit": "none", + "valueMaps": [ + { + "text": "Tor", + "value": "0" + }, + { + "text": "Use", + "value": "1" + } + ] + } + ], + "targets": [ + { + "dsType": "influxdb", + "groupBy": [], + "measurement": "Radarr", + "orderByTime": "ASC", + "policy": "default", + "refId": "A", + "resultFormat": "table", + "select": [ + [ + { + "params": [ + "name" + ], + "type": "field" + }, + { + "params": [ + "Movie" + ], + "type": "alias" + } + ], + [ + { + "params": [ + "quality" + ], + "type": "field" + }, + { + "params": [ + "Quality" + ], + "type": "alias" + } + ], + [ + { + "params": [ + "protocol_id" + ], + "type": "field" + }, + { + "params": [ + "T" + ], + "type": "alias" + } + ] + ], + "tags": [ + { + "key": "type", + "operator": "=", + "value": "Queue" + } + ] + } + ], + "timeFrom": "33s", + "title": "Movies in Queue", + "transform": "table", + "type": "table" +} diff --git a/dashboard/example_panels/table_radarr_queue.png b/dashboard/example_panels/table_radarr_queue.png new file mode 100644 index 0000000..58a853b Binary files /dev/null and b/dashboard/example_panels/table_radarr_queue.png differ diff --git a/dashboard/example_panels/table_sonarr_missing.json b/dashboard/example_panels/table_sonarr_missing.json new file mode 100644 index 0000000..018f181 --- /dev/null +++ b/dashboard/example_panels/table_sonarr_missing.json @@ -0,0 +1,149 @@ +{ + "columns": [], + "datasource": "influxdb", + "fontSize": "100%", + "gridPos": { + "h": 7, + "w": 4, + "x": 20, + "y": 14 + }, + "hideTimeOverride": true, + "id": 16, + "links": [ + { + "targetBlank": true, + "title": "Sonarr", + "type": "absolute", + "url": "https://tv.server.com/wanted/missing" + } + ], + "minSpan": 8, + "pageSize": 6, + "scroll": true, + "showHeader": true, + "sort": { + "col": null, + "desc": false + }, + "styles": [ + { + "alias": "Time", + "dateFormat": "YYYY-MM-DD HH:mm:ss", + "pattern": "Time", + "type": "hidden" + }, + { + "alias": "Name", + "colorMode": "cell", + "colors": [ + "#e24d42", + "rgba(237, 129, 40, 0.89)", + "rgba(50, 172, 45, 0.97)" + ], + "dateFormat": "YYYY-MM-DD HH:mm:ss", + "decimals": 2, + "link": false, + "linkUrl": "", + "pattern": "name", + "preserveFormat": true, + "thresholds": [ + "20" + ], + "type": "string", + "unit": "short" + }, + { + "alias": "", + "colorMode": "row", + "colors": [ + "#e24d42", + "rgba(237, 129, 40, 0.89)", + "rgba(50, 172, 45, 0.97)" + ], + "dateFormat": "YYYY-MM-DD HH:mm:ss", + "decimals": 2, + "mappingType": 1, + "pattern": "TV Show", + "thresholds": [], + "type": "string", + "unit": "short" + }, + { + "alias": "", + "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": "sonarrId", + "thresholds": [], + "type": "hidden", + "unit": "short" + } + ], + "targets": [ + { + "dsType": "influxdb", + "groupBy": [ + { + "params": [ + "sonarrId" + ], + "type": "tag" + } + ], + "measurement": "Sonarr", + "orderByTime": "ASC", + "policy": "default", + "refId": "A", + "resultFormat": "table", + "select": [ + [ + { + "params": [ + "name" + ], + "type": "field" + }, + { + "params": [ + "TV Show" + ], + "type": "alias" + } + ], + [ + { + "params": [ + "sxe" + ], + "type": "field" + }, + { + "params": [ + "S/E" + ], + "type": "alias" + } + ] + ], + "tags": [ + { + "key": "type", + "operator": "=", + "value": "Missing_Days" + } + ] + } + ], + "timeFrom": "33s", + "timeShift": null, + "title": "Missing TV Shows (Last 7 Days)", + "transform": "table", + "type": "table" +} diff --git a/dashboard/example_panels/table_sonarr_missing.png b/dashboard/example_panels/table_sonarr_missing.png new file mode 100644 index 0000000..52d89f3 Binary files /dev/null and b/dashboard/example_panels/table_sonarr_missing.png differ diff --git a/dashboard/example_panels/table_sonarr_on_today.json b/dashboard/example_panels/table_sonarr_on_today.json new file mode 100644 index 0000000..29c210a --- /dev/null +++ b/dashboard/example_panels/table_sonarr_on_today.json @@ -0,0 +1,163 @@ +{ + "columns": [], + "datasource": "influxdb", + "fontSize": "100%", + "gridPos": { + "h": 13, + "w": 4, + "x": 16, + "y": 16 + }, + "hideTimeOverride": true, + "id": 10, + "interval": "32s", + "links": [ + { + "targetBlank": true, + "title": "Sonarr", + "type": "absolute", + "url": "https://tv.server.com/wanted/missing" + } + ], + "minSpan": 8, + "pageSize": 14, + "scroll": true, + "showHeader": true, + "sort": { + "col": 3, + "desc": false + }, + "styles": [ + { + "alias": "Time", + "dateFormat": "YYYY-MM-DD HH:mm:ss", + "pattern": "Time", + "type": "hidden" + }, + { + "alias": "Name", + "colorMode": "cell", + "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, + "linkUrl": "", + "pattern": "name", + "preserveFormat": true, + "thresholds": [ + "20" + ], + "type": "string", + "unit": "short" + }, + { + "alias": "DL", + "colorMode": "row", + "colors": [ + "#0a50a1", + "rgba(237, 129, 40, 0.89)", + "#24c3ff" + ], + "dateFormat": "YYYY-MM-DD HH:mm:ss", + "decimals": 0, + "mappingType": 1, + "pattern": "downloaded", + "thresholds": [ + ".1", + "1" + ], + "type": "string", + "unit": "none", + "valueMaps": [ + { + "text": "No", + "value": "0" + }, + { + "text": "Yes", + "value": "1" + } + ] + }, + { + "alias": "", + "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": "sonarrId", + "thresholds": [], + "type": "hidden", + "unit": "short" + } + ], + "targets": [ + { + "dsType": "influxdb", + "groupBy": [], + "limit": "", + "measurement": "Sonarr", + "orderByTime": "ASC", + "policy": "default", + "refId": "A", + "resultFormat": "table", + "select": [ + [ + { + "params": [ + "name" + ], + "type": "field" + }, + { + "params": [ + "TV Show" + ], + "type": "alias" + } + ], + [ + { + "params": [ + "sxe" + ], + "type": "field" + }, + { + "params": [ + "S/E" + ], + "type": "alias" + } + ], + [ + { + "params": [ + "downloaded" + ], + "type": "field" + } + ] + ], + "tags": [ + { + "key": "type", + "operator": "=", + "value": "Future" + } + ] + } + ], + "timeFrom": "33s", + "title": "TV Shows on Today", + "transform": "table", + "type": "table" +} diff --git a/dashboard/example_panels/table_sonarr_on_today.png b/dashboard/example_panels/table_sonarr_on_today.png new file mode 100644 index 0000000..f88c6d1 Binary files /dev/null and b/dashboard/example_panels/table_sonarr_on_today.png differ diff --git a/dashboard/example_panels/table_sonarr_queue.json b/dashboard/example_panels/table_sonarr_queue.json new file mode 100644 index 0000000..018f181 --- /dev/null +++ b/dashboard/example_panels/table_sonarr_queue.json @@ -0,0 +1,149 @@ +{ + "columns": [], + "datasource": "influxdb", + "fontSize": "100%", + "gridPos": { + "h": 7, + "w": 4, + "x": 20, + "y": 14 + }, + "hideTimeOverride": true, + "id": 16, + "links": [ + { + "targetBlank": true, + "title": "Sonarr", + "type": "absolute", + "url": "https://tv.server.com/wanted/missing" + } + ], + "minSpan": 8, + "pageSize": 6, + "scroll": true, + "showHeader": true, + "sort": { + "col": null, + "desc": false + }, + "styles": [ + { + "alias": "Time", + "dateFormat": "YYYY-MM-DD HH:mm:ss", + "pattern": "Time", + "type": "hidden" + }, + { + "alias": "Name", + "colorMode": "cell", + "colors": [ + "#e24d42", + "rgba(237, 129, 40, 0.89)", + "rgba(50, 172, 45, 0.97)" + ], + "dateFormat": "YYYY-MM-DD HH:mm:ss", + "decimals": 2, + "link": false, + "linkUrl": "", + "pattern": "name", + "preserveFormat": true, + "thresholds": [ + "20" + ], + "type": "string", + "unit": "short" + }, + { + "alias": "", + "colorMode": "row", + "colors": [ + "#e24d42", + "rgba(237, 129, 40, 0.89)", + "rgba(50, 172, 45, 0.97)" + ], + "dateFormat": "YYYY-MM-DD HH:mm:ss", + "decimals": 2, + "mappingType": 1, + "pattern": "TV Show", + "thresholds": [], + "type": "string", + "unit": "short" + }, + { + "alias": "", + "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": "sonarrId", + "thresholds": [], + "type": "hidden", + "unit": "short" + } + ], + "targets": [ + { + "dsType": "influxdb", + "groupBy": [ + { + "params": [ + "sonarrId" + ], + "type": "tag" + } + ], + "measurement": "Sonarr", + "orderByTime": "ASC", + "policy": "default", + "refId": "A", + "resultFormat": "table", + "select": [ + [ + { + "params": [ + "name" + ], + "type": "field" + }, + { + "params": [ + "TV Show" + ], + "type": "alias" + } + ], + [ + { + "params": [ + "sxe" + ], + "type": "field" + }, + { + "params": [ + "S/E" + ], + "type": "alias" + } + ] + ], + "tags": [ + { + "key": "type", + "operator": "=", + "value": "Missing_Days" + } + ] + } + ], + "timeFrom": "33s", + "timeShift": null, + "title": "Missing TV Shows (Last 7 Days)", + "transform": "table", + "type": "table" +} diff --git a/dashboard/example_panels/table_sonarr_queue.png b/dashboard/example_panels/table_sonarr_queue.png new file mode 100644 index 0000000..a54b801 Binary files /dev/null and b/dashboard/example_panels/table_sonarr_queue.png differ