lissy93 / adguardian-term Goto Github PK
View Code? Open in Web Editor NEW๐ก๏ธ Terminal-based, real-time traffic monitoring and statistics for your AdGuard Home instance
Home Page: https://adguardian.as93.net
License: MIT License
๐ก๏ธ Terminal-based, real-time traffic monitoring and statistics for your AdGuard Home instance
Home Page: https://adguardian.as93.net
License: MIT License
I have adguard on a rpi0w2 and once it's started it runs fine, however with adguardian it gets hammered and uses 50-80% cpu. It would be great if I could disable some of the things monitored, to keep cpu low. I am betting without the query log, for instance, it would take far less processing power to update, and would let me have a smaller terminal to see everything else. I also don't really need to see the filter list all the time. It doesn't change unless I make a change.
It would also be nice to have a tiny mode, similar to pihole -c with some minimal adguard and system stats:
|ยฏยฏยฏ(ยฏ)_|ยฏ|_ ___|ยฏ|___ Core: v5.17.1
| ยฏ_/ยฏ|_| ' \/ _ \ / -_) Web: v5.20.1
|_| |_| |_||_\___/_\___| FTL: v5.23
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
Hostname: workhole (Raspberry Pi)
Uptime: 15 days, 08:39:16
Task Load: 0.02 0.34 1.52 (Active: 2 of 30 tasks)
CPU usage: 16% (4x 700 MHz @ 116f)
RAM usage: 81% (Used: 383 MB of 475 MB)
HDD usage: 25% (Used: 5 GB of 21 GB)
Pi-hole: Offline (Blocking: 0 sites)
Blocked: 0% (Total: 0 of 0)
Local Qrys: 0% (4 DNS servers)
Last Block:
Top Block:
Top Domain:
Top Client:
Why not use the config-rs library, to handle environment variables in a more structured and secure way.
My office is using a comcast router which doesn't seem to do ptr records for ipv6. Could a feature be added to have a lookup table that I can manually populate for the clients? Right now even ipv4 seems to be numeric only even though that has a ptr.
error sending request for url (http://127.0.0.1:5553/control/status): operation timed out
Hi,
I have a headless pi with a 3.5" display, is it possible to make it show on that display like PADD does?
Hi!
I am running the latest docker and the latest adguard home version (0.107.29) and can't get it working:
Log:
Welcome to AdGuardian Terminal Edition!
Terminal-based, real-time traffic monitoring and statistics for your AdGuard Home instance
For documentation and support, please visit: https://github.com/lissy93/adguardian-term
Starting initialization checks...
ADGUARD_IP is set to 192.168.0.251
ADGUARD_PORT is set to 3003
ADGUARD_USERNAME is set to xxx
ADGUARD_PASSWORD is set to ******
Verifying connection to your AdGuard instance...
AdGuard connection successful!
Failed to run: Failed to send query data
Error: Failed to run: Failed to send query data
Any idea what it could be?
Thanks
URBANsUNITED
Is it for me or does it take long time for it to stop after hitting "q" or "ctrl+c"
If it runs for a period of time it takes so much long time to stop and after stop terminal shows some gibberish like this:
~$ 184;27M35;183;27M35;182;27M35;180;27M35;178;27M35;175;27M35;172;27M35;170;27M35;169;27M35;168;27M35;168;26M35;167;26M35;167;25M35;166;23M35;165;22M35;164;20M35;163;17M35;163;15M35;162;13M35;162;11M35;162;9M35;162;7M35;162;5M35;162;3M35;163;1M35;188;2M35;186;3M35;184;5M35;182;7M35;181;8M35;180;10M35;178;12M35;177;13M35;176;15M35;175;17M35;175;18M35;174;20M35;174;21M35;174;22M35;173;23M35;173;24M35;173;25M35;173;26M35;173;27M35;173;28M35;174;28M35;174;27M35;175;27M35;175;26M35;176;26M35;177;26M35;177;25M35;178;25M35;179;25M35;180;24M35;181;24M35;182;24M35;183;24M35;184;24M35;185;23M35;186;23M35;188;24M35;187;24M35;186;24M35;186;23M35;187;23M35;188;23M35;190;23M35;191;23M35;194;22M35;196;22M35;199;22M35;202;22M35;204;22M35;205;21M35;207;21M35;210;21M35;212;21M35;214;21M35;216;21M35;218;21M35;219;21M35;221;21M35;222;21M35;223;22M35;225;22M35;226;22M35;227;22M35;228;22M35;229;22M35;230;22M35;231;23M35;232;23M35;233;23M35;234;23M35;235;23M35;235;24M35;236;24M35;237;24M35;237;25M35;238;25M35;239;25M35;239;26M35;240;26M35;239;26M35;238;26M35;237;26M35;235;26M35;233;26M35;231;26M35;228;26M35;226;26M35;223;27M35;219;27M35;215;27M35;211;27M35;207;27M35;203;27M35;199;27M35;195;27M35;190;27M35;187;27M35;183;27M35;179;27M35;175;27M35;172;27M35;169;27M35;166;27M35;164;27M35;162;27M35;160;26M35;159;26M35;158;26M35;157;26M35;156;26M35;155;26M35;154;26M35;154;25M35;154;24M35;154;23M35;154;22M35;154;20M35;155;19M35;155;17M35;156;15M35;157;12M35;158;10M35;159;8M35;160;5M35;161;3M35;162;1M
Hi Alicia,
nice project you build here, i just checked it out today, plz fix the following by updating some deps, thx.
The following deps will fix the upper issue
chrono = { version = "0.4", default-features = false, features = ["now", "clock"] }
crossterm = { version = "0.23.2", features = ["serde"] }
reqwest = { version = "0.12.2", default-features = false, features = ["blocking", "json", "rustls-tls"] }
tokio = { version = "1.37.0", features = ["full"] }
tui = { package = "ratatui", version = "0.23" }
crossterm > 0.23.2 need some more fixes.
ratatui > 0.23 need some more fixes:
no more vul - as we like it
In the top left box, 'Avg Processing Time' is shown currently as 0.008633ms
. The AGH webUI shows it as 9ms
, which if we account for rounding could easily be 0.008633 seconds (as opposed to ms). Is this a mis-label of units in the TUI, or have I missed something? It seems it should be labelled 's'; or, better yet, fettled to read 8.633ms.
Awesome software, btw. Thanks!
It would be nice to show Upstream DNS server which resolved the request in query log if possible.
If you set your stats to 90 days and it's a new install, is there any way the graph could scale so you could see hourly until there's more than one day, then go to daily, etc?
Also I noticed the time axis always says "Days ago" even if the numbers are hours.
The AdGuard v0.107.44 release has changed the API schema. This may also be the reason behind ##22
This is awesome like all your other works.
But I can not find how to pass the environmental variables to the executable.
Tried with : --ADGUARD_IP="192.168.1.10" or ADGUARD_IP="192.168.1.10" or -ADGUARD_IP="192.168.1.10" or ...
adguardian-linux --ADGUARD_IP="192.168.1.10" --ADGUARD_PORT="3000"
Starting initialization checks...
The ADGUARD_IP environmental variable is not yet set
Whatever I do it keep asking me for them
Edit:
Solved by exporting them, but still cant find out how to use them with flag
Hi
This Project looks amazing, however im running pi-hole as my main Adblocker, any way to get a pihole compatible version?
https://github.com/ScoopInstaller/Extras/blob/master/bucket/adguardian.json
https://scoop.sh/#/apps?q=adguardian
Feel free to add installation instruction for windows with the scoop package manager.
Basically:
scoop bucket add extras
scoop install adguardian
I expose my Adguard instances over https and right now it doesn't appear possible to connect regardless of the IP/hostname or port provided.
I don't know Rust well, but I'm guessing this is hardcoding http
as the protocol scheme https://github.com/Lissy93/AdGuardian-Term/blob/main/src/main.rs#L27
amd64 works fine
Checking for updates...
AdGuardian is up-to-date, running version 1.6.0
Starting initialization checks...
ADGUARD_IP is set to test.lan
ADGUARD_PORT is set to 8888
ADGUARD_PROTOCOL is set to http
ADGUARD_USERNAME is set to admin
ADGUARD_PASSWORD is set to ******
Verifying connection to your AdGuard instance...
thread 'main' panicked at /home/yonas/.cargo/registry/src/index.crates.io-6f17d22bba15001f/adguardian-1.6.0/src/welcome.rs:75:69:
called `Result::unwrap()` on an `Err` value: Error("unexpected character '.' while parsing major version number")
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
OS: FreeBSD 14.0
AdGuardian-Term: 1.6.0
Connection is successful:
Verifying connection to your AdGuard instance...
AdGuard connection successful!
Then, container fails to run:
Failed to run: error decoding response body: missing field last_updated
at line 1 column 348
thread 'main' panicked at 'called Result::unwrap()
on an Err
value: Custom { kind: Other, error: "Failed to run" }', src/main.rs:93:12
note: run with RUST_BACKTRACE=1
environment variable to display a backtrace
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.