Skip to content
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

add systemd service files #414

Merged
merged 1 commit into from
Jan 8, 2018
Merged

Conversation

meijjaa
Copy link
Contributor

@meijjaa meijjaa commented Jan 5, 2018

Hallo Dennis,

Bijgevoegd de service files voor systemd welke ik gebruik voor Arch Linux op mijn rpi 2. Ik denk dat dit een mooie toevoeging zou zijn voor alle actuele Linux distributies welke gebruik maken van systemd.

Een mini quick start:

sudo -i
# service files installeren
cp /home/dsmr/dsmr-reader/dsmrreader/provisioning/systemd/dsmr_* /etc/systemd/system/
# reload
systemctl daemon-reload
# services starten bij opstarten
systemctl enable 'dsmr_*'
# services handmatig eerste keer starten
systemctl start 'dsmr_*'
# bekijk de status
systemctl status 'dsmr_*'

# toon log
journalctl -u 'dsmr_*'

@dennissiemensma
Copy link
Member

Hi, bedankt voor je toevoeging. Ik vraag me nog wel af of dit ook werkt in combinatie met het reload/deploy-script.

Zie reload.sh in de root van het project. Alle drie de processen krijgen een SIGHUP om te verwerken en doen daar dan vervolgens wat mee.

Zou je eens kunnen kijken of ze andere PID's krijgen na een reload? De PID van het hoofdproces van Gunicorn verandert overigens nooit, alleen die van de onderliggende workers.

@meijjaa
Copy link
Contributor Author

meijjaa commented Jan 7, 2018

Geen probleem, draag graag wat bij :).

Restart=always is inderdaad echt altijd tenzij de service via systemctl gestopt is. Maar dit is alleen maar een luie keuze van mijn kant, zie table 2 voor veel meer mogelijkheden: https://www.freedesktop.org/software/systemd/man/systemd.service.html

SIGHUP kan je ook sturen maar niet default (SendSIGHUP=).
https://www.freedesktop.org/software/systemd/man/systemd.kill.html#

De PID veranderd bij het opnieuw starten van het proces.

Ik denk dat je reload script wel kan werken maar is het niet mooier om de service handler (systemd / systemctl tool) te gebruiken voor reloads ipv processen rechtstreeks killen?

@dennissiemensma dennissiemensma added this to the 1.12 milestone Jan 8, 2018
@dennissiemensma
Copy link
Member

Bedankt voor het uitproberen. Het is essentieel dat het via de PID's gaat, omdat de applicatie als dsmr gebruiker draait en geen sudo rechten nodig mag hebben. Voor nu zal ik het dan voor je toevoegen.

@dennissiemensma dennissiemensma merged commit 1c4da35 into dsmrreader:development Jan 8, 2018
dennissiemensma added a commit that referenced this pull request Jan 8, 2018
@meijjaa
Copy link
Contributor Author

meijjaa commented Jan 11, 2018

Goed punt, ik ga dit binnenkort beter testen en tunen.

@dennissiemensma
Copy link
Member

Zojuist uitgebracht in release v1.12.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants