match to live

This commit is contained in:
2025-01-05 17:35:57 -06:00
parent c447fa1718
commit bd68f8d693

View File

@@ -24,7 +24,7 @@
"editable": false, "editable": false,
"fiscalYearStartMonth": 0, "fiscalYearStartMonth": 0,
"graphTooltip": 0, "graphTooltip": 0,
"id": 203, "id": 65,
"links": [], "links": [],
"panels": [ "panels": [
{ {
@@ -197,33 +197,6 @@
"transparent": true, "transparent": true,
"type": "stat" "type": "stat"
}, },
{
"description": "Enable Ad disable blocking",
"fieldConfig": {
"defaults": {},
"overrides": []
},
"gridPos": {
"h": 5,
"w": 12,
"x": 12,
"y": 0
},
"id": 42,
"options": {
"code": {
"language": "plaintext",
"showLineNumbers": false,
"showMiniMap": false
},
"content": "<style>\n\n.blocky_btn {\n border: none;\n cursor: pointer; \n padding: 12px;\n font-size: 16px;\n min-width: 100px\n}\n\n.blocky_greenbtn { \n background-color: #4CAF50;\n color: white;\n}\n\n.blocky_redbtn { \n background-color: #AF504C;\n color: white;\n}\n\n\n.blocky_alert {\n font-size: 14px\n}\n</style>\n<div class=\"blocky_alert blocky_alert-warning fade in\">\n <a href=\"#\" class=\"close\" data-dismiss=\"blocky_alert\" aria-label=\"close\" style=\"text-decoration:none\">&times;</a>Done!\n</div>\n<div>\n <button class=\"blocky_btn blocky_greenbtn\" onclick=\"blocky_status_enable()\">On</button>\n <button class=\"blocky_btn blocky_redbtn\" onclick=\"blocky_status_disable5m()\">Off 5m</button>\n <button class=\"blocky_btn blocky_redbtn\" onclick=\"blocky_status_disable30m()\">Off 30m</button>\n<div>\n\n\n<script type=\"text/javascript\">\n\nfunction blocky_status_disable() {\n blocky_status_switch(false, 0)\n}\n\nfunction blocky_status_disable5m() {\n blocky_status_switch(false, 5*60)\n}\n\nfunction blocky_status_disable30m() {\n blocky_status_switch(false, 30*60)\n}\n\nfunction blocky_status_enable() {\n blocky_status_switch(true, 0)\n}\n\nfunction blocky_status_switch(enable, duration) {\n var url = '$blocky_url';\n op = enable ? 'enable' : 'disable?duration='+duration+\"s\"\n $.get(url + '/api/blocking/'+op, function(data) {\n showAlert()\n })\n .fail(function() {\n alert( \"error\" );\n })\n}\n\nvar showAlert = function() {\n\t// first show the alert\n $('.blocky_alert').show().fadeTo(500, 1);\n \n // Now set a timeout to hide it\n window.setTimeout(function() {\n $(\".blocky_alert\").fadeTo(500, 0).slideUp(500, function() {\n $(this).hide();\n });\n }, 3000);\n}\n\n// start with the alert hidden\n$('.blocky_alert').hide();\n\n</script>",
"mode": "html"
},
"pluginVersion": "11.4.0",
"title": "Blocking status",
"transparent": true,
"type": "text"
},
{ {
"datasource": { "datasource": {
"type": "prometheus", "type": "prometheus",
@@ -252,8 +225,8 @@
"gridPos": { "gridPos": {
"h": 3, "h": 3,
"w": 6, "w": 6,
"x": 0, "x": 12,
"y": 3 "y": 0
}, },
"id": 55, "id": 55,
"options": { "options": {
@@ -301,6 +274,145 @@
"transparent": true, "transparent": true,
"type": "stat" "type": "stat"
}, },
{
"datasource": {
"type": "prometheus",
"uid": "${DS_PROMETHEUS}"
},
"description": "Time since last list refresh",
"fieldConfig": {
"defaults": {
"decimals": 0,
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
}
]
},
"unit": "s"
},
"overrides": []
},
"gridPos": {
"h": 3,
"w": 6,
"x": 18,
"y": 0
},
"id": 57,
"options": {
"colorMode": "value",
"graphMode": "area",
"justifyMode": "auto",
"orientation": "auto",
"percentChangeColorMode": "standard",
"reduceOptions": {
"calcs": ["lastNotNull"],
"fields": "",
"values": false
},
"showPercentChange": false,
"textMode": "auto",
"wideLayout": true
},
"pluginVersion": "11.4.0",
"targets": [
{
"datasource": {
"type": "prometheus",
"uid": "${DS_PROMETHEUS}"
},
"exemplar": false,
"expr": "sum(time() -blocky_last_list_group_refresh)/ sum(up{job=~\"$job\"})",
"format": "table",
"instant": true,
"interval": "",
"legendFormat": "",
"refId": "A"
}
],
"title": "Last list refresh",
"transparent": true,
"type": "stat"
},
{
"datasource": {
"uid": "${DS_PROMETHEUS}"
},
"description": "Number of denylist entries",
"fieldConfig": {
"defaults": {
"mappings": [
{
"options": {
"match": "null",
"result": {
"text": "N/A"
}
},
"type": "special"
}
],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
}
]
},
"unit": "none"
},
"overrides": []
},
"gridPos": {
"h": 3,
"w": 6,
"x": 0,
"y": 3
},
"id": 30,
"maxDataPoints": 100,
"options": {
"colorMode": "value",
"graphMode": "area",
"justifyMode": "auto",
"orientation": "horizontal",
"percentChangeColorMode": "standard",
"reduceOptions": {
"calcs": ["lastNotNull"],
"fields": "",
"values": false
},
"showPercentChange": false,
"textMode": "auto",
"wideLayout": true
},
"pluginVersion": "11.4.0",
"targets": [
{
"datasource": {
"type": "prometheus",
"uid": "${DS_PROMETHEUS}"
},
"exemplar": true,
"expr": "sum(blocky_denylist_cache) / sum(up{job=~\"$job\"})",
"format": "table",
"instant": false,
"interval": "",
"legendFormat": "",
"refId": "A"
}
],
"title": "Denylist entries total",
"transparent": true,
"type": "stat"
},
{ {
"datasource": { "datasource": {
"uid": "${DS_PROMETHEUS}" "uid": "${DS_PROMETHEUS}"
@@ -383,20 +495,10 @@
"datasource": { "datasource": {
"uid": "${DS_PROMETHEUS}" "uid": "${DS_PROMETHEUS}"
}, },
"description": "Number of denylist entries", "description": "Number of entries in the cache. Shows the last value",
"fieldConfig": { "fieldConfig": {
"defaults": { "defaults": {
"mappings": [ "mappings": [],
{
"options": {
"match": "null",
"result": {
"text": "N/A"
}
},
"type": "special"
}
],
"thresholds": { "thresholds": {
"mode": "absolute", "mode": "absolute",
"steps": [ "steps": [
@@ -405,8 +507,7 @@
"value": null "value": null
} }
] ]
}, }
"unit": "none"
}, },
"overrides": [] "overrides": []
}, },
@@ -414,18 +515,17 @@
"h": 3, "h": 3,
"w": 6, "w": 6,
"x": 12, "x": 12,
"y": 5 "y": 3
}, },
"id": 30, "id": 45,
"maxDataPoints": 100,
"options": { "options": {
"colorMode": "value", "colorMode": "value",
"graphMode": "area", "graphMode": "area",
"justifyMode": "auto", "justifyMode": "auto",
"orientation": "horizontal", "orientation": "auto",
"percentChangeColorMode": "standard", "percentChangeColorMode": "standard",
"reduceOptions": { "reduceOptions": {
"calcs": ["lastNotNull"], "calcs": ["last"],
"fields": "", "fields": "",
"values": false "values": false
}, },
@@ -441,7 +541,7 @@
"uid": "${DS_PROMETHEUS}" "uid": "${DS_PROMETHEUS}"
}, },
"exemplar": true, "exemplar": true,
"expr": "sum(blocky_denylist_cache) / sum(up{job=~\"$job\"})", "expr": "sum(blocky_cache_entry_count)/ sum(up{job=~\"$job\"})",
"format": "table", "format": "table",
"instant": false, "instant": false,
"interval": "", "interval": "",
@@ -449,20 +549,23 @@
"refId": "A" "refId": "A"
} }
], ],
"title": "Denylist entries total", "title": "Cache entries count",
"transparent": true, "transparent": true,
"type": "stat" "type": "stat"
}, },
{ {
"datasource": { "datasource": {
"type": "prometheus",
"uid": "${DS_PROMETHEUS}" "uid": "${DS_PROMETHEUS}"
}, },
"description": "Time since last list refresh", "description": "Cache Hit/Miss ratio. 100 % means, all queries could be answered from the cache, 0% - all queries must be resolved via external DNS",
"fieldConfig": { "fieldConfig": {
"defaults": { "defaults": {
"decimals": 0, "color": {
"mode": "thresholds"
},
"mappings": [], "mappings": [],
"max": 1,
"min": 0,
"thresholds": { "thresholds": {
"mode": "absolute", "mode": "absolute",
"steps": [ "steps": [
@@ -472,7 +575,7 @@
} }
] ]
}, },
"unit": "s" "unit": "percentunit"
}, },
"overrides": [] "overrides": []
}, },
@@ -480,9 +583,9 @@
"h": 3, "h": 3,
"w": 6, "w": 6,
"x": 18, "x": 18,
"y": 5 "y": 3
}, },
"id": 57, "id": 47,
"options": { "options": {
"colorMode": "value", "colorMode": "value",
"graphMode": "area", "graphMode": "area",
@@ -490,7 +593,7 @@
"orientation": "auto", "orientation": "auto",
"percentChangeColorMode": "standard", "percentChangeColorMode": "standard",
"reduceOptions": { "reduceOptions": {
"calcs": ["lastNotNull"], "calcs": ["mean"],
"fields": "", "fields": "",
"values": false "values": false
}, },
@@ -505,16 +608,16 @@
"type": "prometheus", "type": "prometheus",
"uid": "${DS_PROMETHEUS}" "uid": "${DS_PROMETHEUS}"
}, },
"exemplar": false, "exemplar": true,
"expr": "sum(time() -blocky_last_list_group_refresh)/ sum(up{job=~\"$job\"})", "expr": "sum(increase(blocky_cache_hit_count[$__range])) / (sum(increase(blocky_cache_hit_count[$__range])) + sum(increase(blocky_cache_miss_count[$__range])))",
"format": "table", "format": "table",
"instant": true, "instant": false,
"interval": "", "interval": "",
"legendFormat": "", "legendFormat": "",
"refId": "A" "refId": "A"
} }
], ],
"title": "Last list refresh", "title": "Cache Hit/Miss ratio",
"transparent": true, "transparent": true,
"type": "stat" "type": "stat"
}, },
@@ -677,7 +780,7 @@
"datasource": { "datasource": {
"uid": "${DS_PROMETHEUS}" "uid": "${DS_PROMETHEUS}"
}, },
"description": "Number of entries in the cache. Shows the last value", "description": "Amount of prefetch queries per minute",
"fieldConfig": { "fieldConfig": {
"defaults": { "defaults": {
"mappings": [], "mappings": [],
@@ -687,6 +790,10 @@
{ {
"color": "green", "color": "green",
"value": null "value": null
},
{
"color": "red",
"value": 80
} }
] ]
} }
@@ -697,9 +804,9 @@
"h": 3, "h": 3,
"w": 6, "w": 6,
"x": 12, "x": 12,
"y": 8 "y": 6
}, },
"id": 45, "id": 51,
"options": { "options": {
"colorMode": "value", "colorMode": "value",
"graphMode": "area", "graphMode": "area",
@@ -707,7 +814,7 @@
"orientation": "auto", "orientation": "auto",
"percentChangeColorMode": "standard", "percentChangeColorMode": "standard",
"reduceOptions": { "reduceOptions": {
"calcs": ["last"], "calcs": ["lastNotNull"],
"fields": "", "fields": "",
"values": false "values": false
}, },
@@ -723,15 +830,14 @@
"uid": "${DS_PROMETHEUS}" "uid": "${DS_PROMETHEUS}"
}, },
"exemplar": true, "exemplar": true,
"expr": "sum(blocky_cache_entry_count)/ sum(up{job=~\"$job\"})", "expr": "sum(rate(blocky_prefetch_count[5m])) * 60",
"format": "table", "format": "table",
"instant": false,
"interval": "", "interval": "",
"legendFormat": "", "legendFormat": "",
"refId": "A" "refId": "A"
} }
], ],
"title": "Cache entries count", "title": "Prefetch rate per min",
"transparent": true, "transparent": true,
"type": "stat" "type": "stat"
}, },
@@ -739,7 +845,7 @@
"datasource": { "datasource": {
"uid": "${DS_PROMETHEUS}" "uid": "${DS_PROMETHEUS}"
}, },
"description": "Cache Hit/Miss ratio. 100 % means, all queries could be answered from the cache, 0% - all queries must be resolved via external DNS", "description": "How many of cached entries were prefetched automatically",
"fieldConfig": { "fieldConfig": {
"defaults": { "defaults": {
"color": { "color": {
@@ -765,9 +871,9 @@
"h": 3, "h": 3,
"w": 6, "w": 6,
"x": 18, "x": 18,
"y": 8 "y": 6
}, },
"id": 47, "id": 58,
"options": { "options": {
"colorMode": "value", "colorMode": "value",
"graphMode": "area", "graphMode": "area",
@@ -791,7 +897,7 @@
"uid": "${DS_PROMETHEUS}" "uid": "${DS_PROMETHEUS}"
}, },
"exemplar": true, "exemplar": true,
"expr": "sum(increase(blocky_cache_hit_count[$__range])) / (sum(increase(blocky_cache_hit_count[$__range])) + sum(increase(blocky_cache_miss_count[$__range])))", "expr": "sum(increase(blocky_prefetch_hit_count[$__range])) / (sum(increase(blocky_cache_hit_count[$__range])))",
"format": "table", "format": "table",
"instant": false, "instant": false,
"interval": "", "interval": "",
@@ -799,7 +905,7 @@
"refId": "A" "refId": "A"
} }
], ],
"title": "Cache Hit/Miss ratio", "title": "Prefetch Hit ratio",
"transparent": true, "transparent": true,
"type": "stat" "type": "stat"
}, },
@@ -925,139 +1031,6 @@
"transparent": true, "transparent": true,
"type": "stat" "type": "stat"
}, },
{
"datasource": {
"uid": "${DS_PROMETHEUS}"
},
"description": "Amount of prefetch queries per minute",
"fieldConfig": {
"defaults": {
"mappings": [],
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
},
{
"color": "red",
"value": 80
}
]
}
},
"overrides": []
},
"gridPos": {
"h": 3,
"w": 6,
"x": 12,
"y": 11
},
"id": 51,
"options": {
"colorMode": "value",
"graphMode": "area",
"justifyMode": "auto",
"orientation": "auto",
"percentChangeColorMode": "standard",
"reduceOptions": {
"calcs": ["lastNotNull"],
"fields": "",
"values": false
},
"showPercentChange": false,
"textMode": "auto",
"wideLayout": true
},
"pluginVersion": "11.4.0",
"targets": [
{
"datasource": {
"type": "prometheus",
"uid": "${DS_PROMETHEUS}"
},
"exemplar": true,
"expr": "sum(rate(blocky_prefetch_count[5m])) * 60",
"format": "table",
"interval": "",
"legendFormat": "",
"refId": "A"
}
],
"title": "Prefetch rate per min",
"transparent": true,
"type": "stat"
},
{
"datasource": {
"uid": "${DS_PROMETHEUS}"
},
"description": "How many of cached entries were prefetched automatically",
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [],
"max": 1,
"min": 0,
"thresholds": {
"mode": "absolute",
"steps": [
{
"color": "green",
"value": null
}
]
},
"unit": "percentunit"
},
"overrides": []
},
"gridPos": {
"h": 3,
"w": 6,
"x": 18,
"y": 11
},
"id": 58,
"options": {
"colorMode": "value",
"graphMode": "area",
"justifyMode": "auto",
"orientation": "auto",
"percentChangeColorMode": "standard",
"reduceOptions": {
"calcs": ["mean"],
"fields": "",
"values": false
},
"showPercentChange": false,
"textMode": "auto",
"wideLayout": true
},
"pluginVersion": "11.4.0",
"targets": [
{
"datasource": {
"type": "prometheus",
"uid": "${DS_PROMETHEUS}"
},
"exemplar": true,
"expr": "sum(increase(blocky_prefetch_hit_count[$__range])) / (sum(increase(blocky_cache_hit_count[$__range])))",
"format": "table",
"instant": false,
"interval": "",
"legendFormat": "",
"refId": "A"
}
],
"title": "Prefetch Hit ratio",
"transparent": true,
"type": "stat"
},
{ {
"datasource": { "datasource": {
"uid": "${DS_PROMETHEUS}" "uid": "${DS_PROMETHEUS}"
@@ -1100,8 +1073,8 @@
"gridPos": { "gridPos": {
"h": 3, "h": 3,
"w": 6, "w": 6,
"x": 0, "x": 12,
"y": 12 "y": 9
}, },
"id": 36, "id": 36,
"maxDataPoints": 100, "maxDataPoints": 100,
@@ -1174,8 +1147,8 @@
"gridPos": { "gridPos": {
"h": 3, "h": 3,
"w": 6, "w": 6,
"x": 6, "x": 18,
"y": 12 "y": 9
}, },
"id": 28, "id": 28,
"maxDataPoints": 100, "maxDataPoints": 100,
@@ -1280,7 +1253,7 @@
"h": 7, "h": 7,
"w": 24, "w": 24,
"x": 0, "x": 0,
"y": 15 "y": 12
}, },
"id": 10, "id": 10,
"options": { "options": {
@@ -1381,7 +1354,7 @@
"h": 7, "h": 7,
"w": 24, "w": 24,
"x": 0, "x": 0,
"y": 22 "y": 19
}, },
"id": 52, "id": 52,
"options": { "options": {
@@ -1440,7 +1413,7 @@
"h": 9, "h": 9,
"w": 24, "w": 24,
"x": 0, "x": 0,
"y": 29 "y": 26
}, },
"id": 22, "id": 22,
"options": { "options": {
@@ -1528,7 +1501,7 @@
"h": 8, "h": 8,
"w": 12, "w": 12,
"x": 0, "x": 0,
"y": 38 "y": 35
}, },
"id": 2, "id": 2,
"maxDataPoints": 3, "maxDataPoints": 3,
@@ -1547,10 +1520,11 @@
"values": false "values": false
}, },
"tooltip": { "tooltip": {
"mode": "single" "mode": "single",
"sort": "none"
} }
}, },
"pluginVersion": "6.6.2", "pluginVersion": "11.4.0",
"targets": [ "targets": [
{ {
"datasource": { "datasource": {
@@ -1597,7 +1571,7 @@
"h": 8, "h": 8,
"w": 12, "w": 12,
"x": 12, "x": 12,
"y": 38 "y": 35
}, },
"id": 8, "id": 8,
"maxDataPoints": 3, "maxDataPoints": 3,
@@ -1616,10 +1590,11 @@
"values": false "values": false
}, },
"tooltip": { "tooltip": {
"mode": "single" "mode": "single",
"sort": "none"
} }
}, },
"pluginVersion": "6.6.2", "pluginVersion": "11.4.0",
"targets": [ "targets": [
{ {
"datasource": { "datasource": {
@@ -1666,7 +1641,7 @@
"h": 8, "h": 8,
"w": 12, "w": 12,
"x": 0, "x": 0,
"y": 46 "y": 43
}, },
"id": 32, "id": 32,
"maxDataPoints": 3, "maxDataPoints": 3,
@@ -1685,10 +1660,11 @@
"values": false "values": false
}, },
"tooltip": { "tooltip": {
"mode": "single" "mode": "single",
"sort": "none"
} }
}, },
"pluginVersion": "6.6.2", "pluginVersion": "11.4.0",
"targets": [ "targets": [
{ {
"datasource": { "datasource": {
@@ -1735,7 +1711,7 @@
"h": 8, "h": 8,
"w": 12, "w": 12,
"x": 12, "x": 12,
"y": 46 "y": 43
}, },
"id": 14, "id": 14,
"maxDataPoints": 3, "maxDataPoints": 3,
@@ -1754,9 +1730,11 @@
"values": false "values": false
}, },
"tooltip": { "tooltip": {
"mode": "single" "mode": "single",
"sort": "none"
} }
}, },
"pluginVersion": "11.4.0",
"targets": [ "targets": [
{ {
"datasource": { "datasource": {
@@ -1803,7 +1781,7 @@
"h": 8, "h": 8,
"w": 12, "w": 12,
"x": 0, "x": 0,
"y": 54 "y": 51
}, },
"id": 38, "id": 38,
"maxDataPoints": 3, "maxDataPoints": 3,
@@ -1822,9 +1800,11 @@
"values": false "values": false
}, },
"tooltip": { "tooltip": {
"mode": "single" "mode": "single",
"sort": "none"
} }
}, },
"pluginVersion": "11.4.0",
"targets": [ "targets": [
{ {
"datasource": { "datasource": {
@@ -1871,7 +1851,7 @@
"h": 8, "h": 8,
"w": 12, "w": 12,
"x": 12, "x": 12,
"y": 54 "y": 51
}, },
"id": 12, "id": 12,
"maxDataPoints": 3, "maxDataPoints": 3,
@@ -1890,9 +1870,11 @@
"values": false "values": false
}, },
"tooltip": { "tooltip": {
"mode": "single" "mode": "single",
"sort": "none"
} }
}, },
"pluginVersion": "11.4.0",
"targets": [ "targets": [
{ {
"datasource": { "datasource": {
@@ -1966,6 +1948,5 @@
"timezone": "browser", "timezone": "browser",
"title": "Blocky", "title": "Blocky",
"uid": "6d9fbba15f227461149bffee5e61c025", "uid": "6d9fbba15f227461149bffee5e61c025",
"version": 3,
"weekStart": "" "weekStart": ""
} }