Opened 4 years ago

Closed 3 years ago

#1996 closed defect (wontfix)

Why is there no Restart=on-failure in systemd unit

Reported by: 131@… Owned by:
Priority: minor Milestone:
Component: nginx-package Version: 1.14.x
Keywords: systemd, unit, restart Cc: 131@…
uname -a: Linux rproxy2.XXX.local 3.16.0-9-amd64 #1 SMP Debian 3.16.68-2 (2019-06-17) x86_64 GNU/Linux
nginx -V: nginx version: nginx/1.14.0
built by gcc 4.9.2 (Debian 4.9.2-10+deb8u1)
built with OpenSSL 1.0.1t 3 May 2016
TLS SNI support enabled
configure arguments: --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --modules-path=/usr/lib/nginx/modules --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --lock-path=/var/run/nginx.lock --http-client-body-temp-path=/var/cache/nginx/client_temp --http-proxy-temp-path=/var/cache/nginx/proxy_temp --http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp --http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx --group=nginx --with-compat --with-file-aio --with-threads --with-http_addition_module --with-http_auth_request_module --with-http_dav_module --with-http_flv_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_mp4_module --with-http_random_index_module --with-http_realip_module --with-http_secure_link_module --with-http_slice_module --with-http_ssl_module --with-http_stub_status_module --with-http_sub_module --with-http_v2_module --with-mail --with-mail_ssl_module --with-stream --with-stream_realip_module --with-stream_ssl_module --with-stream_ssl_preread_module --with-cc-opt='-g -O2 -fstack-protector-strong -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fPIC' --with-ld-opt='-Wl,-z,relro -Wl,-z,now -Wl,--as-needed -pie'

Description

So, nginx failed to start as an upstream DNS provider was not available.
That's fine, it might append on boot.

Is it possible, instead of entering failed state, that nginx try to restart whenever it crash using the "Restart=always" or "Restart=on-failure" systemd directive ?

Is there a reason for this directive NOT to be configured in nginx default packages ?

Thank you for your response
Francois

Change History (1)

comment:1 by Maxim Dounin, 3 years ago

Resolution: wontfix
Status: newclosed

Starting nginx is not expected to fail unless it is incorrectly configured, and trying to restart it would be a waste of resources. Further, it will hide configuration issues if they are transient like the one you are seeing.

In your particular case, a better solution would be to ensure that DNS is available during nginx start, or the names used in nginx configuration are available without DNS.

Note: See TracTickets for help on using tickets.