-
-
Notifications
You must be signed in to change notification settings - Fork 200
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
High CPU Load 'pihole-FTL -f' #2129
Comments
Okay, so the workload is actually in the webworkers, i.e., the API. Are you actively using the web interface at this time? It may be helpful to enable API debugging which will print an access log to
|
I have to stop and start the lxc container. Because i cant use pihole, when the cpu load is so high. After restarting the container everything is normal. But, when i start using the admin interface, just for looking, the cpu load rises. Not really fast, but percent by percent. So, i can confirm that. I enabled the debug.api and see a lot of "access". What exactly are you looking for? |
I'd first reduce the number of cores you have assigned to the container, this will make debugging probably a bit easier as there is less parallelism (as in: fewer concurrent threads) going on. Probably simpler than evaluating the access log: Since you have activated the API debugging mode, you'll also see many diagnosis lines in
You can get the thread IDs from the square bracket notation, e.g. |
This is not a good sign, it indicates that the API processing is actually done and the thread is "hanging" somewhere else. Please check this related issue for the next step to be done: #2103 (comment) |
how can "interrupt" pihole-FTL ? |
Ctrl + C |
Thank you, this is exactly what we are looking for here. Unfortunately, this is pretty inconclusive. We see it is hanging inside the SSL handshake procedures. Could you check if the issue also happens when you use plain HTTP instead of HTTPS to connect to your web interface? Otherwise, I'd suggest you look into |
I check the webserver.log later. Space is no problem. I had never a problem with such high cpu load...since the last FLT update...i have an backup from the lxc container and can go back..but this will not help you and me. :( |
Well, maybe, it would actually be helpful. If you could look into your backup the exact commit of |
We can do some more investigation if you want..i can check log...and the last "straw" is my backup. |
cat /var/log/pihole/webserver.log | grep -i key > no returns size from webserver.log is 424K |
Do you have lines like
in your |
nope...nothing :( i set debug.webserver true...we will see |
[2024-12-07 19:54:09.113 UTC 10033] DEBUG: HTTPS Host: 192.168.2.170 (src/webserver/civetweb/civetweb.c:14486) is this a bug? -> DEBUG: http: 1.1, error: none (src/webserve/civetweb/civetweb.c:19836) there is a "r" missing in werbserver |
Note: Your log above shows a few lines with unexpected text: Missing
Missing
But I have no idea what could cause these issues. Maybe DL6ER knows what is happening. |
No, I don't know how to explain this. Those are hard-coded strings and I can think only of two reasons here (1) binary corruption (can be checked using Remaining questions from above from my side:
|
from pihole-v6
strange, that the 'bug' with the missing 'r' is gone. cat /var/log/pihole/webserver.log | grep -i civetweb ->
soo... i create a new container with the 'working' backup. Now, i have two pihole-v6 instances... pihole-v6 and pihole-v6-2. I enabled debug.api and debug.webserver @ pihole-v6-2. At the moment, i will set up 3 devices to use the pihole-v6-2 instance as dns to generate load / traffic.
this is from pihole-v6-2 |
okay..thats strange... pihole-v6-2 .. the 'working'-one
after a few minutes...the cpu load is 'normal'...the threads are normal..but the webinterface is not working |
okay..next try...i will create a new container with a fresh v6 install..without https...and then we will see |
I believe I'm hitting this as well. |
Sorry if I come across petty but: Does it really crash? As far as this issue goes, Pi-hole "just" consumes too much CPU to be still usable. I prepared a special version for you which you can get via:
which will launch only two web threads. This should keep DNS (and the overall rest of the system) still usable even when the web server goes nuts. |
Not at all petty. Just kind and helpful, as always. I'll have to verify that the issue I'm seeing is in fact related to the web threads. |
My issue turned out to be unrelated to the webserver threads. See #2154. |
Versions
Core
Version is v5.18.3-549-g03932e8c (Latest: null)
Branch is development
Hash is 03932e8c (Latest: 03932e8c)
Web
Version is v5.21-1034-g8cd680e1 (Latest: null)
Branch is development
Hash is 8cd680e1 (Latest: 8cd680e1)
FTL
Version is vDev-707280c (Latest: null)
Branch is development
Hash is 707280c (Latest: 707280c)
Platform
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=24.04
DISTRIB_CODENAME=noble
DISTRIB_DESCRIPTION="Ubuntu 24.04.1 LTS"
pihole runs in a lxc- container. with no reglementations. (cpu,ram, hdd etc.)
Actual behavior / bug
I installed today the newest ftl update via pihole -up. Since then, the cpu usage from pihole-ftl is higher than normal.
Debug Token
Screenshots
after some time...
The text was updated successfully, but these errors were encountered: