NAME
Svsh::Perp - perp support for svsh
DESCRIPTION
This class provides support for perp to svsh - the supervisor shell.
DEFAULT BASE DIRECTORY
As per the perpboot documentation, perp
does not have a default base directory, but will check if a PERP_BASE
environment variable is set, and if not, will try /etc/perp
. This class will do the same if a base directory is not provided to svsh
.
IMPLEMENTED METHODS
Refer to Svsh for complete explanation of these methods. Only changes from the base specifications are listed here.
status()
perp
provides more information about service statuses then other supervisors. down
means the service is down but should be up (unexpected down), disabled
means the service is down because it was manually stopped, resetting
means the service is restarting, and backoff
means the service is attempting to start (possibly failing, not necessarily).
This uses the A
option of perpctl
instead of u
or U
, see stop() why.
This uses the X
option of perpctl
instead of d
or D
, as there seems to be a bug(?) where processes stopped with this option failed to start again when the start() method is called.
signal( $signal, @services )
fg( $service )
rescan()
terminate()
BUGS AND LIMITATIONS
Please report any bugs or feature requests to https://github.com/ido50/Svsh/issues.
AUTHOR
Ido Perlmuter <ido@ido50.net>
Thanks to the guys at the supervision mailing list, especially Colin Booth, for helping out with suggestions and information.
LICENSE AND COPYRIGHT
Copyright (c) 2015-2023, Ido Perlmuter ido@ido50.net
.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
3 POD Errors
The following errors were encountered while parsing the POD:
- Around line 81:
Unknown directive: =head
- Around line 92:
Unknown directive: =head
- Around line 104:
Unknown directive: =head