Updating restart_services.sh to restart faster now with socket re-use enabled for server

This commit is contained in:
Jake Herbst
2022-05-25 21:17:35 -04:00
parent 605066ae76
commit f41363d11e
+26 -1
View File
@@ -4,9 +4,10 @@ source /etc/birdnet/birdnet.conf
set -x set -x
my_dir=$HOME/BirdNET-Pi/scripts my_dir=$HOME/BirdNET-Pi/scripts
sudo systemctl stop birdnet_server.service sudo systemctl stop birdnet_server.service
sudo pkill server.py
sudo systemctl stop birdnet_recording.service sudo systemctl stop birdnet_recording.service
services=(web_terminal.service services=(web_terminal.service
spectrogram_viewer.service spectrogram_viewer.service
livestream.service livestream.service
@@ -19,8 +20,32 @@ birdnet_log.service)
for i in "${services[@]}";do for i in "${services[@]}";do
sudo systemctl restart "${i}" sudo systemctl restart "${i}"
done done
sudo systemctl start birdnet_server.service
sleep 5
for i in {1..5}; do
# We want to loop here (5*5seconds) until the server is running and listening on its port
systemctl is-active --quiet birdnet_server.service \
&& grep 5050 <(netstat -tulpn 2>&1) \
&& logger "[$0] birdnet_server.service is running" \
&& break
sleep 5
done
# Let's check a final time to ensure the server is running
systemctl is-active --quiet birdnet_server.service && grep 5050 <(netstat -tulpn 2>&1)
status=$?
if (( status != 0 )); then
logger "[$0] Unable to start birdnet_server.service... Looping until it start properly"
until grep 5050 <(netstat -tulpn 2>&1);do until grep 5050 <(netstat -tulpn 2>&1);do
sudo systemctl restart birdnet_server.service sudo systemctl restart birdnet_server.service
sleep 45 sleep 45
done done
fi
# Finally start the birdnet_analysis.service
sudo systemctl restart birdnet_analysis.service sudo systemctl restart birdnet_analysis.service