From 412f1f58cc0115d0b4ec8533d875764e4174087b Mon Sep 17 00:00:00 2001 From: Dirk Brenken Date: Fri, 30 Dec 2016 22:21:00 +0100 Subject: [PATCH] adblock: update 2.0.3 * fixed adblock statistics in CC * print additional list details in adblock statistics Signed-off-by: Dirk Brenken --- net/adblock/Makefile | 2 +- net/adblock/files/README.md | 27 +++++++++++++++++++++++++-- net/adblock/files/adblock.sh | 17 ++++++++++++++--- 3 files changed, 40 insertions(+), 6 deletions(-) diff --git a/net/adblock/Makefile b/net/adblock/Makefile index 8ec995808..82636ff6a 100644 --- a/net/adblock/Makefile +++ b/net/adblock/Makefile @@ -6,7 +6,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=adblock -PKG_VERSION:=2.0.2 +PKG_VERSION:=2.0.3 PKG_RELEASE:=1 PKG_LICENSE:=GPL-3.0+ PKG_MAINTAINER:=Dirk Brenken diff --git a/net/adblock/files/README.md b/net/adblock/files/README.md index a5ecd8a13..569dab2fd 100644 --- a/net/adblock/files/README.md +++ b/net/adblock/files/README.md @@ -144,8 +144,31 @@ config for curl (download errors with default ssl backend!): **example to receive adblock statistics via ubus:**

-ubus call service list '{"name":"adblock_stats"}' | jsonfilter -e '@.*.instances.stats.env'
-This will output the overall domain count and the last runtime as JSON, i.e. { "blocked_domains": "136159", "last_rundate": "18.12.2016 20:49:03" }
+ubus call service list '{"name":"adblock_stats"}'
+This will output the active block lists, the overall domain count and the last runtime as JSON, i.e.:
+{
+    "adblock_stats": {
+        "instances": {
+            "stats": {
+                "running": false,
+                "command": [
+                    ""
+                ],
+                "data": {
+                    "active_lists": [
+                        {
+                            "adaway": "409",
+                            "yoyo": "2368",
+                            "disconnect": "3198"
+                        }
+                    ],
+                    "blocked_domains": "5975",
+                    "last_rundate": "30.12.2016 21:03:45"
+                }
+            }
+        }
+    }
+}
 
**example cronjob for a regular block list update (/etc/crontabs/root):** diff --git a/net/adblock/files/adblock.sh b/net/adblock/files/adblock.sh index 9bd31f7e7..9a8cb2828 100755 --- a/net/adblock/files/adblock.sh +++ b/net/adblock/files/adblock.sh @@ -10,7 +10,7 @@ # LC_ALL=C PATH="/usr/sbin:/usr/bin:/sbin:/bin" -adb_ver="2.0.2" +adb_ver="2.0.3" adb_enabled=1 adb_debug=0 adb_whitelist="/etc/adblock/adblock.whitelist" @@ -147,7 +147,7 @@ f_rmdns() rm -f "${adb_dnsdir}/${adb_dnsprefix}"* rm -f "${adb_dir_backup}/${adb_dnsprefix}"*.gz rm -rf "${adb_dnshidedir}" - ubus call service delete "{\"name\":\"adblock_stats\",\"instances\":\"stats\"}" + ubus call service delete "{\"name\":\"adblock_stats\",\"instances\":\"stats\"}" 2>/dev/null } # f_dnsrestart: restart the dns server @@ -420,6 +420,13 @@ f_main() cat "${src_name}" >> "${adb_tmpdir}/blocklist.overall" cnt="$(wc -l < "${src_name}")" sum_cnt=$((sum_cnt + cnt)) + list="${src_name/*./}" + if [ -z "${sum_list}" ] + then + sum_list="\"${list}\":\"${cnt}\"" + else + sum_list="${sum_list},\"${list}\":\"${cnt}\"" + fi done f_dnsrestart if [ "${dns_running}" = "true" ] @@ -427,7 +434,11 @@ f_main() f_debug f_rmtemp f_log "info " "status ::: block lists with overall ${sum_cnt} domains loaded (${adb_sysver})" - ubus call service set "{\"name\":\"adblock_stats\",\"instances\":{\"stats\":{\"env\":{\"blocked_domains\":\"${sum_cnt}\",\"last_rundate\":\"$(/bin/date "+%d.%m.%Y %H:%M:%S")\"}}}}" + ubus call service add "{\"name\":\"adblock_stats\", + \"instances\":{\"stats\":{\"command\":[\"\"], + \"data\":{\"blocked_domains\":\"${sum_cnt}\", + \"last_rundate\":\"$(/bin/date "+%d.%m.%Y %H:%M:%S")\", + \"active_lists\":[{${sum_list}}]}}}}" exit 0 fi f_log "error" "status ::: dns server restart with active block lists failed"