systemd
всегда будет иметь PID 1, поэтому вы можете проверить, что родительский PID равен 1:
import psutil, os
if psutil.Process(os.getpid()).ppid() == 1:
# We are using systemd
Однако, вероятно, лучше предложить флаг командной строки --syslog
и передать его вместе с сервисом systemd
, таким образом пользователь сможет выбрать использование syslog даже без сервиса systemd
.
Исправление простое :вам нужно указать resolved
как источник разрешения DNS в/etc/nsswitch.
Добавьте « resolve » в директиву hosts, сделав ее первой в списке. Таким образом, записьhostsв/etc/nsswitchдолжна выглядеть так, как показано ниже:
hosts: resolve files dns myhostname
Давайте посмотрим, что произойдет после внесения изменений в/etc/nsswitch: