On Mon, 07.02.11 10:01, Cristian Patrascu ([email protected]) wrote:
> > On 02/03/2011 11:19 PM, Michael Biebl wrote: > >2011/2/3 Tomasz Torcz<[email protected]>: > >>On Thu, Feb 03, 2011 at 09:35:55PM +0100, Michael Biebl wrote: > >>>ExecStartOnFailure=/some/cmd (send an email or what not) > >> Isn't “OnFailure=send-email-to-admin.service” sufficent? > >Having to use a service file for this use case is imho cumbersome, > >especially since you can't pass information to that service afaik, > >e.g. via env variables. > >So this send-email-to-admin.service doesn't know which service it was, > >that failed and its last status code. Or am I misinformed here? > > > >Also, does OnFailure= work as I described with regard to Restart=on-failure? > > > >Michael > On 02/03/2011 10:35 PM, Michael Biebl wrote: > >ExecStartOnFailure=/some/cmd (send an email or what not) > > > >If Restart=on-failure is not set, this command is executed when the > >starting the service has failed. > > 2011/2/3 Cristian Patrascu <[email protected]>: > >- RestartRetries=n (where n is the number of restart retries) > > Using "Restart=on-failure" and "OnFailure=some-other.service", the > specified service will be started for every restart that exits with > fail, of current service. I think tis current behaviour probably makes little sense, so my suggestion would be to simply change it and run the services listed in OnFailure= only after we tried to restart the service and gave up. So here's what I'd suggest: a) Introduce RestartRetries= as you suggested b) Reshuffle things so that OnFailure= is run only after RestartRetries= is reached when it is set or each time if RestartRetries= is not set. c) Do not introduce ExecPostRestarts= I think this would be a very simple, minimal and natural extension and should do everything you need, right? I'd be happy to merge such a patch! Lennart -- Lennart Poettering - Red Hat, Inc. _______________________________________________ systemd-devel mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/systemd-devel
