Supervisor Abstraction¶
This module implements a Supervisor
class.
An example of supervisor declaration:
<entry>
type = supervisor
name = supervisor1
window = 12
adjustments = 3
strategy = one_for_one
expected = none
<children>
.... other supervisors or services
</children>
</entry>
Parameters¶
- name
- unique name of the supervisor.
- window
- window of supervision cycles which should be considered when defining if a supervisor is in a failing state.
- adjustments
- maximum number of cycles on which a child adjustment was needed in the given window of supervision cycle in order to consider it a failure.
- strategy
- one_for_one: if a child process terminates, only that process is restarted.
- one_for_all: if a child process terminates, all other child processes are terminated and then all child processes, including the terminated one, are restarted.
- rest_for_one: If a child process terminates, the rest of the child processes i.e. the child processes after the terminated process in start order are terminated. Then the terminated child process and the rest of the child processes are restarted.
- expected
- none|running|stopped
- children
- children structure.
Required Parameters¶
- children section is required or supervisor is not useful
Default Parameters¶
- name = supervisor
- expected = none
- window = 12
- adjustments = 3
- strategy = one_for_one
Copyright (C) 2013-2016 CERN