pihole-FTL restart button from admin gui

Hi,

Just now it looks like my pihole-FTL process died on my debian install so it got my thinking if there was a way to start the process from the admin GUI.

We can restart the DNS service, we can reboot the server but we cannot restart pihole-FTL.

Simple placement for me would be in the "System Administration" part of the "Settings" page on the admin GUI.

Thanks!

It is done like this by intention, Instead of "healing" crashes by restarting FTL, we are much more interested in resolving the underlying issues such that a restart is never needed. Hence, we intentionally don't add such a button, because otherwise users would never (or at least much rarer) report issues which would make it much harder for us to find possible bugs.

Can you follow the debugging steps mentioned in the FTL README in order to assist us resolving the issue you are seeing? If FTL is running fine for you for some time, you can also use the simplified debugging instructions we provide here:

You can follow number 9 of the non-simplified instructions afterwards.

1 Like

I can see that. for me, it's been rock solid for months. This one "fluke" and figured I would look for a service restart and made a post about it.

We have seen only one crash lately and that was caused by being on the development branches and re-enabling Pi-hole blocking. Is there any chance this might have happened to you?

We already have a fix for this, but as the next release of FTL will include the long-awaited long-term backend, further test is currently going on and this fix has not been released immediately.

hmm.... I switched to the dev branch just to see if my other feature request (alternative posted by another dev) was in there and it wasn't so I rolled back my VM. this cannot have caused the issue.

Here's the log from within the time frame of the crash(or fault, there's no actual error)

I started FTL by runnign pihole-FTL

[2017-06-14 21:49:38.106] Notice: Increasing queries struct size from 30000 to 40000 (1.44 MB)
[2017-06-15 00:00:01.489] NOTICE: pihole.log has been flushed
[2017-06-15 00:00:01.489] Resetting internal data structure
[2017-06-15 00:00:01.489] Queries in memory before flushing: 30942
[2017-06-15 04:54:36.778] ########## FTL started! ##########
[2017-06-15 04:54:36.778] FTL branch: (no branch)
[2017-06-15 04:54:36.778] FTL hash: v2.8
[2017-06-15 04:54:36.778] FTL date: 2017-06-03 19:32:55 +0200
[2017-06-15 04:54:36.778] FTL user: root
[2017-06-15 04:54:36.778] Warning: Starting pihole-FTL directly is not recommended.
[2017-06-15 04:54:36.778] Instead, use system commands for starting pihole-FTL as service (systemctl / service).
[2017-06-15 04:54:36.778] Notice: Found no readable FTL config file
[2017-06-15 04:54:36.778] Using default settings

[quote="M0n0mana, post:3, topic:3672, full:true"]

(gdb) backtrace
#0  0x00007f103616f893 in select () from /lib/x86_64-linux-gnu/libc.so.6
#1  0x0000564af97d39e8 in sleepms (milliseconds=<optimized out>) at daemon.c:201
#2  0x0000564af97d265a in main (argc=<optimized out>, argv=<optimized out>) at main.c:84
(gdb) quit

All I could fine in my case. We can close this topic if this isn't useful anymore. Thanks for your time!

How did you obtain this backtrace?

Simplified debugging instructions (when FTL is running)

From the link you provided earlier.

FTL has been designed such that a debugger can be attached to an already running process to ease debugging. Use sudo gdb -p $(pidof pihole-FTL) to attach to an already running pihole-FTL process. You can leave off sudo if you are running pihole-FTL with the current user. Once loading of the symbols has finished (the (gdb) input prompt is shown), run continue to continue operation of pihole-FTL inside the debugger. All debugger features are now available.

If pihole-FTL has crashed, copy&paste the terminal output into a (new) issue. Also type backtrace and include its output. We might ask for additional information in order to isolate your particular issue.

When you want to detach the debugger from FTL without terminating the process, you can hit Ctrl+C and enter detach followed by quit.

Okay, so you did a Ctrl+C and entered backtrace thereafter? That would make a lot more sense, because the backtrace you showed means it is waiting for incoming connections and does not look like any crash related stuff.

exactly.

Have a nice weekend.

Implemented.