What's new
  • SNBForums Code of Conduct

    SNBForums is a community for everyone, no matter what their level of experience.

    Please be tolerant and patient of others, especially newcomers. We are all here to share and learn!

    The rules are simple: Be patient, be nice, be helpful or be gone!

Solved No GUI stats

Spoke a little too soon. After 24 hours, it's only showing the following pane, all the other panes are blank. I have DNS firewall enabled and the config below shows "log-local-actions: yes", "log-replies: yes". Also, I just rebooted from cli and now no "addons" tab. I don't know what I'm doing wrong.


1749377555297.png

# integration LOG's
#
verbosity: 1 # v1.02 '1' is adequate to prove unbound is processing domains
logfile: "/opt/var/lib/unbound/unbound.log" # v1.01 as per @dave14305 minimal config (v3.06 now deletes this if size grows > 10MB)
log-time-ascii: yes # v1.01 as per @dave14305 minimal config
log-tag-queryreply: yes # v1.02 @Martineau Explicitly Tag log-queries/replies with 'query'/'reply'
log-queries: yes
log-replies: yes
#use-syslog: yes # v1.02 @Martineau Recommended to let scribe/syslog-ng handle the log(s)
log-local-actions: yes # v1.02 @Martineau ('yes' required for @juched's Graphical Ad Block statistics)
log-servfail: yes # v1.01 as per @dave14305 minimal config

/opt/var/lib/unbound/unbound.log has many entries.

When I type sa it outputs the following in cli but not gui:

thread0.num.queries=21674 histogram.000000.131072.to.000000.262144=3238
thread0.num.queries_ip_ratelimited=0 histogram.000000.262144.to.000000.524288=1428
thread0.num.queries_cookie_valid=0 histogram.000000.524288.to.000001.000000=362
thread0.num.queries_cookie_client=0 histogram.000001.000000.to.000002.000000=42
thread0.num.queries_cookie_invalid=0 histogram.000002.000000.to.000004.000000=0
thread0.num.queries_discard_timeout=7 histogram.000004.000000.to.000008.000000=0
thread0.num.queries_wait_limit=0 histogram.000008.000000.to.000016.000000=0
thread0.num.cachehits=9562 histogram.000016.000000.to.000032.000000=0
thread0.num.cachemiss=12112 histogram.000032.000000.to.000064.000000=0
thread0.num.prefetch=909 histogram.000064.000000.to.000128.000000=0
thread0.num.queries_timed_out=0 histogram.000128.000000.to.000256.000000=0
thread0.query.queue_time_us.max=0 histogram.000256.000000.to.000512.000000=0
thread0.num.expired=0 histogram.000512.000000.to.001024.000000=0
thread0.num.recursivereplies=12105 histogram.001024.000000.to.002048.000000=0
thread0.num.dns_error_reports=0 histogram.002048.000000.to.004096.000000=0
thread0.requestlist.avg=2.85255 histogram.004096.000000.to.008192.000000=0
thread0.requestlist.max=81 histogram.008192.000000.to.016384.000000=0
thread0.requestlist.overwritten=0 histogram.016384.000000.to.032768.000000=0
thread0.requestlist.exceeded=0 histogram.032768.000000.to.065536.000000=0
thread0.requestlist.current.all=0 histogram.065536.000000.to.131072.000000=0
thread0.requestlist.current.user=0 histogram.131072.000000.to.262144.000000=0
thread0.recursion.time.avg=0.156514 histogram.262144.000000.to.524288.000000=0
thread0.recursion.time.median=0.114742 num.query.type.A=10644
thread0.tcpusage=0 num.query.type.NS=9
total.num.queries=21674 num.query.type.CNAME=9
total.num.queries_ip_ratelimited=0 num.query.type.SOA=9
total.num.queries_cookie_valid=0 num.query.type.WKS=9
total.num.queries_cookie_client=0 num.query.type.PTR=66
total.num.queries_cookie_invalid=0 num.query.type.HINFO=9
total.num.queries_discard_timeout=7 num.query.type.TXT=26
total.num.queries_wait_limit=0 num.query.type.AAAA=8519
total.num.cachehits=9562 num.query.type.SRV=2
total.num.cachemiss=12112 num.query.type.NAPTR=2
total.num.prefetch=909 num.query.type.HTTPS=2355
total.num.queries_timed_out=0 num.query.class.IN=21659
total.query.queue_time_us.max=0 num.query.opcode.QUERY=21659
total.num.expired=0 num.query.tcp=2
total.num.recursivereplies=12105 num.query.tcpout=21
total.num.dns_error_reports=0 num.query.udpout=64895
total.requestlist.avg=2.85255 num.query.tls=0
total.requestlist.max=81 num.query.tls.resume=0
total.requestlist.overwritten=0 num.query.ipv6=0
total.requestlist.exceeded=0 num.query.https=0
total.requestlist.current.all=0 num.query.flags.QR=0
total.requestlist.current.user=0 num.query.flags.AA=0
total.recursion.time.avg=0.156514 num.query.flags.TC=0
total.recursion.time.median=0.114742 num.query.flags.RD=21624
total.tcpusage=0 num.query.flags.RA=0
time.now=1749377788.239275 num.query.flags.Z=7
time.up=77629.298904 num.query.flags.AD=0
time.elapsed=77629.298904 num.query.flags.CD=0
mem.cache.rrset=4620207 num.query.edns.present=21657
mem.cache.message=3846719 num.query.edns.DO=9
mem.mod.iterator=16756 num.answer.rcode.NOERROR=21459
mem.mod.validator=360451 num.answer.rcode.FORMERR=7
mem.mod.respip=0 num.answer.rcode.SERVFAIL=0
mem.streamwait=0 num.answer.rcode.NXDOMAIN=166
mem.http.query_buffer=0 num.answer.rcode.NOTIMPL=0
mem.http.response_buffer=0 num.answer.rcode.REFUSED=35
histogram.000000.000000.to.000000.000001=184 num.answer.rcode.nodata=1788
histogram.000000.000001.to.000000.000002=0 num.query.ratelimited=0
histogram.000000.000002.to.000000.000004=0 num.answer.secure=243
histogram.000000.000004.to.000000.000008=0 num.answer.bogus=0
histogram.000000.000008.to.000000.000016=0 num.rrset.bogus=0
histogram.000000.000016.to.000000.000032=0 num.query.aggressive.NOERROR=17
histogram.000000.000032.to.000000.000064=0 num.query.aggressive.NXDOMAIN=0
histogram.000000.000064.to.000000.000128=0 unwanted.queries=0
histogram.000000.000128.to.000000.000256=0 unwanted.replies=0
histogram.000000.000256.to.000000.000512=0 msg.cache.count=10431
histogram.000000.000512.to.000000.001024=0 rrset.cache.count=13782
histogram.000000.001024.to.000000.002048=0 infra.cache.count=7565
histogram.000000.002048.to.000000.004096=1 key.cache.count=584
histogram.000000.004096.to.000000.008192=1 msg.cache.max_collisions=6
histogram.000000.008192.to.000000.016384=7 rrset.cache.max_collisions=6
histogram.000000.016384.to.000000.032768=976 num.query.authzone.up=51
histogram.000000.032768.to.000000.065536=1923 num.query.authzone.down=0
histogram.000000.065536.to.000000.131072=3943
 
I uninstalled all addons and reformatted the usb. I then reinstalled according to your instructions. It shows the "addons" tab but still only data under "Unbound Statistics Report" pane.
 
I uninstalled all addons and reformatted the usb. I then reinstalled according to your instructions. It shows the "addons" tab but still only data under "Unbound Statistics Report" pane.

Provide screenshots of the setup process please for unbound. As well as screenshots of the F12 console screen in your browser.
Also send the output of this:

Code:
grep -in "httpApi\.js" /jffs/addons/unbound/unboundstats_www.asp

I just went through the setup process now without issue:

1. Installed and configured Unbound through AMTM:
1749385037114.png

(Including DNS Firewall and the GUI)

2. Confirmed the WebUI was broken before anything else (exactly as your screenshot in the primary post)

1749385070515.png


3. Ran the following command from SSH:
Code:
curl --retry 3 "https://raw.githubusercontent.com/juched78/Unbound-Asuswrt-Merlin/refs/heads/develop/unboundstats_www.asp" -o "/jffs/addons/unbound/unboundstats_www.asp" && chmod 755 "/jffs/addons/unbound/unboundstats_www.asp"
1749385670622.png


4. Rebooted and checked the WebUI again, confirmed it's working as expected:

1749385151902.png
1749385161421.png
 
Last edited:
Uninstalled unbound via amtm.

screenshots of the setup process:

1749385559255.png

I don't know if I should enable logging at install or not?
Do you want to ENABLE unbound logging? (NO recommended)

Do you want to ENABLE unbound logging? (NO recommended)

Reply 'y' or press ENTER to skip

unbound-checkconf: no errors in /opt/var/lib/unbound/unbound.conf

Do you want to optimise Performance/Memory parameters? (YES recommended)

Reply 'y' or press [Enter] to skip
y


1749385813862.png


1749385907987.png


screenshots of the F12:

1749386153446.png


grep -in "httpApi\.js" /jffs/addons/unbound/unboundstats_www.asp

ASUSWRT-Merlin GT-AX6000 3006.102.4_0 Sat May 10 15:59:43 UTC 2025
GT-AX6000@router:/tmp/home/root# grep -in "httpApi\.js" /jffs/addons/unbound/unboundstats_www.asp
68:<script language="JavaScript" type="text/javascript" src="/js/httpApi.js"></script>
GT-AX6000@router:/tmp/home/root#
 

Attachments

  • 1749385865670.png
    1749385865670.png
    43 KB · Views: 4
Uninstalled unbound via amtm.

screenshots of the setup process:

View attachment 66160
I don't know if I should enable logging at install or not?

Logging is not required; I selected no,

Do you want to ENABLE unbound logging? (NO recommended)

Do you want to ENABLE unbound logging? (NO recommended)

Reply 'y' or press ENTER to skip

unbound-checkconf: no errors in /opt/var/lib/unbound/unbound.conf

Do you want to optimise Performance/Memory parameters? (YES recommended)

Reply 'y' or press [Enter] to skip
y


View attachment 66162

Looks fine up to this point.


Looks good. Don't forget to reboot after doing this step.

screenshots of the F12:

View attachment 66165

This is not ideal, we want the console for errors, not the elements page:

1749386905531.png


grep -in "httpApi\.js" /jffs/addons/unbound/unboundstats_www.asp

ASUSWRT-Merlin GT-AX6000 3006.102.4_0 Sat May 10 15:59:43 UTC 2025
GT-AX6000@router:/tmp/home/root# grep -in "httpApi\.js" /jffs/addons/unbound/unboundstats_www.asp
68:<script language="JavaScript" type="text/javascript" src="/js/httpApi.js"></script>
GT-AX6000@router:/tmp/home/root#

Good, this confirms the patched version is in the correct location, but not that it's been loaded. (That's why I poked to make sure to include that reboot step above)
The loaded version would be found somewhere here: /www/user as one of the userx.asp files (my my case, user8)

1749386982619.png
 
I didn't enable logging either. I rebooted. Here is F12: console. I am using Brave browser. This must be it...
1749387369932.png


ASUSWRT-Merlin GT-AX6000 3006.102.4_0 Sat May 10 15:59:43 UTC 2025
GT-AX6000@router:/tmp/home/root# grep -in "httpApi\.js" /jffs/addons/unbound/unboundstats_www.asp
68:<script language="JavaScript" type="text/javascript" src="/js/httpApi.js"></script>
GT-AX6000@router:/tmp/home/root#
 
GT-AX6000@router:/tmp/home/root# cd /www/user
GT-AX6000@router:/tmp/var/wwwext# ls
cgi-bin diversion skynet unbound_stats.sh user1.asp user2.asp user3.asp
GT-AX6000@router:/tmp/var/wwwext#
 
I didn't enable logging either. I rebooted. Here is F12: console. I am using Brave browser. This must be it...
View attachment 66168

ASUSWRT-Merlin GT-AX6000 3006.102.4_0 Sat May 10 15:59:43 UTC 2025
GT-AX6000@router:/tmp/home/root# grep -in "httpApi\.js" /jffs/addons/unbound/unboundstats_www.asp
68:<script language="JavaScript" type="text/javascript" src="/js/httpApi.js"></script>
GT-AX6000@router:/tmp/home/root#

Looks like your missing the shared library from jackyaz in this location to me: /jffs/addons/shared-jy
Can you try to navigate to that location and list the contents? With WinSCP or SSH?

1749387693912.png

1749387718206.png
 
GT-AX6000@router:/tmp/var/wwwext# cd /jffs/addons/shared-jy
GT-AX6000@router:/jffs/addons/shared-jy# ls
addons.png chartjs-plugin-trendline.js detect.js iziToast.min.js redirect.htm
chart.js chartjs-plugin-zoom.js hammerjs.js jquery.js shared-jy.tar.gz.md5
chartjs-plugin-annotation.js d3.js iziToast.min.css moment.js
GT-AX6000@router:/jffs/addons/shared-jy#
 
GT-AX6000@router:/tmp/var/wwwext# cd /jffs/addons/shared-jy
GT-AX6000@router:/jffs/addons/shared-jy# ls
addons.png chartjs-plugin-trendline.js detect.js iziToast.min.js redirect.htm
chart.js chartjs-plugin-zoom.js hammerjs.js jquery.js shared-jy.tar.gz.md5
chartjs-plugin-annotation.js d3.js iziToast.min.css moment.js
GT-AX6000@router:/jffs/addons/shared-jy#

Maybe not missing, but something wrong it seems since it seems to be complaining the resources aren't available
 
I also have Diversion and Skynet installed
unbound works. when I check public resolver it resolves to my IP.
 
I also have Diversion and Skynet installed
unbound works. when I check public resolver it resolves to my IP.

I also have diversion but I have it set to the default "small" blocklist. I don't have Skynet and I'm not familiar with how it works really. What I can say is you can test with Skynet disabled and with Diversion disabled to see if it helps and to rule that out.

You can also try with any other browser except Brave to rule that out.

Maybe worst case you can try resetting up the shared library
 
I deleted cookies and cache on my browser for 10.10.50.1 (my router IP) and still only 1 pane. Tried in MS Edge and same thing.
Disabled Diversion and Skynet still no luck. Like I said, I uninstalled all addons, formatted usb, then reinstalled according to your instructions. Why would the shared library be corrupt? Maybe do factory reset, reformat usb and start fresh? I hate to do that as I lose all my settings.

How do I reset up the shared library?
 
Last edited:
I deleted cookies and cache on my browser for 10.10.50.1 (my router IP) and still only 1 pane. Tried in MS Edge and same thing.
Disabled Diversion and Skynet still no luck. Like I said, I uninstalled all addons, formatted usb, then reinstalled according to your instructions. Why would the shared library be corrupt? Maybe do factory reset, reformat usb and start fresh? I hate to do that as I lose all my settings.

How do I reset up the shared library?

Run:

Code:
rm -rf "/jffs/addons/shared-jy"

That deletes it.
Then run:

Code:
sh /jffs/addons/unbound/unbound_stats.sh install

To re-set it up
 
That did it, working now. Is there something I need to do in the future if this happens, or it just shouldn't happen right?

1749390590537.png
 
Run:

Code:
rm -rf "/jffs/addons/shared-jy"

That deletes it.
Then run:

Code:
sh /jffs/addons/unbound/unbound_stats.sh install

To re-set it up
Nothing creates the soft link except an install? Probably wouldn’t happen if another jackyaz script was installed. Something needs to create it during boot.
 
Like I said, I uninstalled all addons, formatted usb, then reinstalled according to your instructions. Why would the shared library be corrupt?

The shared library lives within the JFFs directory, and not within the USB directory, so formatting the USB should technically leave it intact.

However I'm not sure how all the add-ons deal with the shared library when are they removed / formatted. And how they might all put them back if missing. Etc.

Nothing creates the soft link except an install? Probably wouldn’t happen if another jackyaz script was installed. Something needs to create it during boot.

I believe that's the issue, is that in my case I have Jacks add-ons installed. But in his case he is relying on the unbound setup script.
 
That did it, working now. Is there something I need to do in the future if this happens, or it just shouldn't happen right?

View attachment 66173

You should be good. I'll take this offline and see if a PR can be suggested to improve the setup process.
 
Just rebooted and same thing happened, no data. Also, I have "log-replies: yes", and "log-local-actions: yes" but no data under them. See below.

1749391227565.png

1749391265069.png


config log settings
# integration LOG's
#
verbosity: 0 # v1.02 '1' is adequate to prove unbound is processing domains
logfile: "/opt/var/lib/unbound/unbound.log" # v1.01 as per @dave14305 minimal config (v3.06 now deletes this if size grows > 10MB)
log-time-ascii: yes # v1.01 as per @dave14305 minimal config
log-tag-queryreply: yes # v1.02 @Martineau Explicitly Tag log-queries/replies with 'query'/'reply'
log-queries: yes
log-replies: yes
#use-syslog: yes # v1.02 @Martineau Recommended to let scribe/syslog-ng handle the log(s)
log-local-actions: yes # v1.02 @Martineau ('yes' required for @juched's Graphical Ad Block statistics)
log-servfail: yes # v1.01 as per @dave14305 minimal config
 
Just rebooted and same thing happened, no data. Also, I have "log-replies: yes", and "log-local-actions: yes" but no data under them. See below.

View attachment 66174
View attachment 66175

config log settings
# integration LOG's
#
verbosity: 0 # v1.02 '1' is adequate to prove unbound is processing domains
logfile: "/opt/var/lib/unbound/unbound.log" # v1.01 as per @dave14305 minimal config (v3.06 now deletes this if size grows > 10MB)
log-time-ascii: yes # v1.01 as per @dave14305 minimal config
log-tag-queryreply: yes # v1.02 @Martineau Explicitly Tag log-queries/replies with 'query'/'reply'
log-queries: yes
log-replies: yes
#use-syslog: yes # v1.02 @Martineau Recommended to let scribe/syslog-ng handle the log(s)
log-local-actions: yes # v1.02 @Martineau ('yes' required for @juched's Graphical Ad Block statistics)
log-servfail: yes # v1.01 as per @dave14305 minimal config

As Dave mentioned there's nothing linking it at boot so your good as long as you don't reboot hahaha 🤣 as a quick workaround while you wait for an improved unbound installer, you should install scMerlin which will link everything for you.
 

Similar threads

Support SNBForums w/ Amazon

If you'd like to support SNBForums, just use this link and buy anything on Amazon. Thanks!

Sign Up For SNBForums Daily Digest

Get an update of what's new every day delivered to your mailbox. Sign up here!
Back
Top